cylinders.spec.ts 1.5 KB

123456789101112131415161718192021222324252627282930313233343536373839
  1. /**
  2. * Copyright (c) 2021 mol* contributors, licensed under MIT, See LICENSE file for more info.
  3. *
  4. * @author Alexander Rose <alexander.rose@weirdbyte.de>
  5. */
  6. import { createRenderObject } from '../render-object';
  7. import { Scene } from '../scene';
  8. import getGLContext from 'gl';
  9. import { setDebugMode } from '../../mol-util/debug';
  10. import { createRenderer } from './renderer.spec';
  11. import { ColorNames } from '../../mol-util/color/names';
  12. import { ParamDefinition as PD } from '../../mol-util/param-definition';
  13. import { Cylinders } from '../../mol-geo/geometry/cylinders/cylinders';
  14. export function createCylinders() {
  15. const cylinders = Cylinders.createEmpty();
  16. const props = PD.getDefaultValues(Cylinders.Params);
  17. const values = Cylinders.Utils.createValuesSimple(cylinders, props, ColorNames.orange, 1);
  18. const state = Cylinders.Utils.createRenderableState(props);
  19. return createRenderObject('cylinders', values, state, -1);
  20. }
  21. describe('cylinders', () => {
  22. const gl = getGLContext(32, 32);
  23. const { ctx } = createRenderer(gl);
  24. (ctx.extensions.fragDepth ? it : it.skip)('basic', async () => {
  25. const gl = getGLContext(32, 32);
  26. const { ctx } = createRenderer(gl);
  27. const scene = Scene.create(ctx);
  28. const cylinders = createCylinders();
  29. scene.add(cylinders);
  30. setDebugMode(true);
  31. expect(() => scene.commit()).not.toThrow();
  32. setDebugMode(false);
  33. gl.getExtension('STACKGL_destroy_context')?.destroy();
  34. });
  35. });