UNPKG

1.4 kBJavaScriptView Raw
1'use strict';
2
3import FluxRenderer from '../src/FluxRenderer.js';
4import * as THREE from 'three';
5
6// This is a stub
7var domElement = document.createElement();
8
9export function initRenderer(t) {
10 var renderer = new FluxRenderer(domElement, 100, 100);
11
12 var width = 400;
13 var height = 200;
14 renderer.setSize(width, height);
15 t.equal(renderer._width, width, 'Renderer width updated');
16 t.equal(renderer._height, height, 'Renderer height updated');
17
18 var setHostCalled = false;
19 renderer._setHost = function () {
20 setHostCalled = true;
21 };
22 renderer.doRender();
23 t.ok(setHostCalled, 'Rendering should call setHost');
24 t.end();
25}
26
27export function selectionMaterial(t) {
28 var renderer = new FluxRenderer(domElement, 100, 100);
29 renderer.setSelectionMaterial({"color":"blue"});
30 t.deepEqual(renderer._selectionControls._selectionMaterial.surface.color, { r:0, g:0, b:1 },
31 'Selection material should be blue');
32 t.end();
33}
34
35export function selection(t) {
36 var renderer = new FluxRenderer(domElement, 100, 100);
37 var geometry = new THREE.SphereBufferGeometry( 5000, 32, 32 );
38 var material = new THREE.MeshBasicMaterial( {color: 0xffff00} );
39 var sphere = new THREE.Mesh( geometry, material );
40 renderer.setSelection([sphere]);
41 t.ok(renderer.getSelection()[sphere.uuid]===sphere, "Should return selected object");
42 t.end();
43}