Browse Source

Tests: Unit Tests for Helpers (#25398)

* Update ArrowHelper.tests.js

ArrowHelper extends from Object3D.
ArrowHelper.type should be ArrowHelper.
Stub missing member tests.

* Update AxesHelper.tests.js

AxesHelper extends from LineSegments.
AxesHelper.type should be AxesHelper.
Stub missing member tests.

* Update Box3Helper.tests.js

Box3Helper extends from LineSegments.
Box3Helper.type should be Box3Helper.
Stub missing member tests.

* Update BoxHelper.tests.js

BoxHelper extends from LineSegments.
BoxHelper.type should be BoxHelper.
Stub missing member tests.

* Update CameraHelper.tests.js

CameraHelper extends from LineSegments.
CameraHelper.type should be CameraHelper.
Stub missing member tests.

* Update DirectionalLightHelper.tests.js

DirectionalLightHelper extends from Object3D.
DirectionalLightHelper.type should be DirectionalLightHelper.
Stub missing member tests.

* Update GridHelper.tests.js

GridHelper extends from LineSegments.
GridHelper.type should be GridHelper.
Stub missing member tests.

* Update HemisphereLightHelper.tests.js

HemisphereLightHelper extends from Object3D.
HemisphereLightHelper.type should be HemisphereLightHelper.
Stub missing member tests.

* Update PlaneHelper.tests.js

PlaneHelper extends from Line.
PlaneHelper.type should be PlaneHelper.
Stub missing member tests.

* Update PointLightHelper.tests.js

PointLightHelper extends from Mesh.
PointLightHelper.type should be PointLightHelper.
Stub missing member tests.

* Update PolarGridHelper.tests.js

PolarGridHelper extends from LineSegments.
PolarGridHelper.type should be PolarGridHelper.
Stub missing member tests.

* Update SkeletonHelper.tests.js

SkeletonHelper extends from LineSegments.
SkeletonHelper.type should be SkeletonHelper.
SkeletonHelper.isSkeletonHelper should be true.
Stub missing member tests.

* Update SpotLightHelper.tests.js

SpotLightHelper extends from Object3D.
SpotLightHelper.type should be SpotLightHelper.
Stub missing member tests.
Ed Preston 2 years ago
parent
commit
b52bef467b

+ 51 - 4
test/unit/src/helpers/ArrowHelper.tests.js

@@ -1,15 +1,21 @@
 /* global QUnit */
 
-// import { ArrowHelper } from '../../../../src/helpers/ArrowHelper.js';
+import { ArrowHelper } from '../../../../src/helpers/ArrowHelper.js';
+
+import { Object3D } from '../../../../src/core/Object3D.js';
 
 export default QUnit.module( 'Helpers', () => {
 
 	QUnit.module( 'ArrowHelper', () => {
 
 		// INHERITANCE
-		QUnit.todo( 'Extending', ( assert ) => {
+		QUnit.test( 'Extending', ( assert ) => {
 
-			assert.ok( false, 'everything\'s gonna be alright' );
+			const object = new ArrowHelper();
+			assert.strictEqual(
+				object instanceof Object3D, true,
+				'ArrowHelper extends from Object3D'
+			);
 
 		} );
 
@@ -20,7 +26,36 @@ export default QUnit.module( 'Helpers', () => {
 
 		} );
 
-		// PUBLIC STUFF
+		// PROPERTIES
+		QUnit.test( 'type', ( assert ) => {
+
+			const object = new ArrowHelper();
+			assert.ok(
+				object.type === 'ArrowHelper',
+				'ArrowHelper.type should be ArrowHelper'
+			);
+
+		} );
+
+		QUnit.todo( 'position', ( assert ) => {
+
+			assert.ok( false, 'everything\'s gonna be alright' );
+
+		} );
+
+		QUnit.todo( 'line', ( assert ) => {
+
+			assert.ok( false, 'everything\'s gonna be alright' );
+
+		} );
+
+		QUnit.todo( 'cone', ( assert ) => {
+
+			assert.ok( false, 'everything\'s gonna be alright' );
+
+		} );
+
+		// PUBLIC
 		QUnit.todo( 'setDirection', ( assert ) => {
 
 			assert.ok( false, 'everything\'s gonna be alright' );
@@ -39,6 +74,18 @@ export default QUnit.module( 'Helpers', () => {
 
 		} );
 
+		QUnit.todo( 'copy', ( assert ) => {
+
+			assert.ok( false, 'everything\'s gonna be alright' );
+
+		} );
+
+		QUnit.todo( 'dispose', ( assert ) => {
+
+			assert.ok( false, 'everything\'s gonna be alright' );
+
+		} );
+
 	} );
 
 } );

+ 33 - 3
test/unit/src/helpers/AxesHelper.tests.js

@@ -1,15 +1,21 @@
 /* global QUnit */
 
-// import { AxesHelper } from '../../../../src/helpers/AxesHelper.js';
+import { AxesHelper } from '../../../../src/helpers/AxesHelper.js';
+
+import { LineSegments } from '../../../../src/objects/LineSegments.js';
 
 export default QUnit.module( 'Helpers', () => {
 
 	QUnit.module( 'AxesHelper', () => {
 
 		// INHERITANCE
-		QUnit.todo( 'Extending', ( assert ) => {
+		QUnit.test( 'Extending', ( assert ) => {
 
-			assert.ok( false, 'everything\'s gonna be alright' );
+			const object = new AxesHelper();
+			assert.strictEqual(
+				object instanceof LineSegments, true,
+				'AxesHelper extends from LineSegments'
+			);
 
 		} );
 
@@ -20,6 +26,30 @@ export default QUnit.module( 'Helpers', () => {
 
 		} );
 
+		// PROPERTIES
+		QUnit.test( 'type', ( assert ) => {
+
+			const object = new AxesHelper();
+			assert.ok(
+				object.type === 'AxesHelper',
+				'AxesHelper.type should be AxesHelper'
+			);
+
+		} );
+
+		// PUBLIC
+		QUnit.todo( 'setColors', ( assert ) => {
+
+			assert.ok( false, 'everything\'s gonna be alright' );
+
+		} );
+
+		QUnit.todo( 'dispose', ( assert ) => {
+
+			assert.ok( false, 'everything\'s gonna be alright' );
+
+		} );
+
 	} );
 
 } );

+ 33 - 4
test/unit/src/helpers/Box3Helper.tests.js

@@ -1,15 +1,21 @@
 /* global QUnit */
 
-// import { Box3Helper } from '../../../../src/helpers/Box3Helper.js';
+import { Box3Helper } from '../../../../src/helpers/Box3Helper.js';
+
+import { LineSegments } from '../../../../src/objects/LineSegments.js';
 
 export default QUnit.module( 'Helpers', () => {
 
 	QUnit.module( 'Box3Helper', () => {
 
 		// INHERITANCE
-		QUnit.todo( 'Extending', ( assert ) => {
+		QUnit.test( 'Extending', ( assert ) => {
 
-			assert.ok( false, 'everything\'s gonna be alright' );
+			const object = new Box3Helper();
+			assert.strictEqual(
+				object instanceof LineSegments, true,
+				'Box3Helper extends from LineSegments'
+			);
 
 		} );
 
@@ -20,13 +26,36 @@ export default QUnit.module( 'Helpers', () => {
 
 		} );
 
-		// PUBLIC STUFF
+		// PROPERTIES
+		QUnit.test( 'type', ( assert ) => {
+
+			const object = new Box3Helper();
+			assert.ok(
+				object.type === 'Box3Helper',
+				'Box3Helper.type should be Box3Helper'
+			);
+
+		} );
+
+		QUnit.todo( 'box', ( assert ) => {
+
+			assert.ok( false, 'everything\'s gonna be alright' );
+
+		} );
+
+		// PUBLIC
 		QUnit.todo( 'updateMatrixWorld', ( assert ) => {
 
 			assert.ok( false, 'everything\'s gonna be alright' );
 
 		} );
 
+		QUnit.todo( 'dispose', ( assert ) => {
+
+			assert.ok( false, 'everything\'s gonna be alright' );
+
+		} );
+
 	} );
 
 } );

+ 45 - 4
test/unit/src/helpers/BoxHelper.tests.js

@@ -1,7 +1,9 @@
 /* global QUnit */
 
-import { runStdGeometryTests } from '../../utils/qunit-utils.js';
 import { BoxHelper } from '../../../../src/helpers/BoxHelper.js';
+
+import { LineSegments } from '../../../../src/objects/LineSegments.js';
+import { runStdGeometryTests } from '../../utils/qunit-utils.js';
 import { BoxGeometry } from '../../../../src/geometries/BoxGeometry.js';
 import { SphereGeometry } from '../../../../src/geometries/SphereGeometry.js';
 import { Mesh } from '../../../../src/objects/Mesh.js';
@@ -29,9 +31,13 @@ export default QUnit.module( 'Helpers', () => {
 		} );
 
 		// INHERITANCE
-		QUnit.todo( 'Extending', ( assert ) => {
+		QUnit.test( 'Extending', ( assert ) => {
 
-			assert.ok( false, 'everything\'s gonna be alright' );
+			const object = new BoxHelper();
+			assert.strictEqual(
+				object instanceof LineSegments, true,
+				'BoxHelper extends from LineSegments'
+			);
 
 		} );
 
@@ -42,7 +48,30 @@ export default QUnit.module( 'Helpers', () => {
 
 		} );
 
-		// PUBLIC STUFF
+		// PROPERTIES
+		QUnit.test( 'type', ( assert ) => {
+
+			const object = new BoxHelper();
+			assert.ok(
+				object.type === 'BoxHelper',
+				'BoxHelper.type should be BoxHelper'
+			);
+
+		} );
+
+		QUnit.todo( 'object', ( assert ) => {
+
+			assert.ok( false, 'everything\'s gonna be alright' );
+
+		} );
+
+		QUnit.todo( 'matrixAutoUpdate', ( assert ) => {
+
+			assert.ok( false, 'everything\'s gonna be alright' );
+
+		} );
+
+		// PUBLIC
 		QUnit.todo( 'update', ( assert ) => {
 
 			assert.ok( false, 'everything\'s gonna be alright' );
@@ -55,6 +84,18 @@ export default QUnit.module( 'Helpers', () => {
 
 		} );
 
+		QUnit.todo( 'copy', ( assert ) => {
+
+			assert.ok( false, 'everything\'s gonna be alright' );
+
+		} );
+
+		QUnit.todo( 'dispose', ( assert ) => {
+
+			assert.ok( false, 'everything\'s gonna be alright' );
+
+		} );
+
 		// OTHERS
 		QUnit.test( 'Standard geometry tests', ( assert ) => {
 

+ 59 - 4
test/unit/src/helpers/CameraHelper.tests.js

@@ -1,15 +1,23 @@
 /* global QUnit */
 
-// import { CameraHelper } from '../../../../src/helpers/CameraHelper.js';
+import { CameraHelper } from '../../../../src/helpers/CameraHelper.js';
+
+import { LineSegments } from '../../../../src/objects/LineSegments.js';
+import { PerspectiveCamera } from '../../../../src/cameras/PerspectiveCamera.js';
 
 export default QUnit.module( 'Helpers', () => {
 
 	QUnit.module( 'CameraHelper', () => {
 
 		// INHERITANCE
-		QUnit.todo( 'Extending', ( assert ) => {
+		QUnit.test( 'Extending', ( assert ) => {
 
-			assert.ok( false, 'everything\'s gonna be alright' );
+			const camera = new PerspectiveCamera();
+			const object = new CameraHelper( camera );
+			assert.strictEqual(
+				object instanceof LineSegments, true,
+				'CameraHelper extends from LineSegments'
+			);
 
 		} );
 
@@ -20,13 +28,60 @@ export default QUnit.module( 'Helpers', () => {
 
 		} );
 
-		// PUBLIC STUFF
+		// PROPERTIES
+		QUnit.test( 'type', ( assert ) => {
+
+			const camera = new PerspectiveCamera();
+			const object = new CameraHelper( camera );
+			assert.ok(
+				object.type === 'CameraHelper',
+				'CameraHelper.type should be CameraHelper'
+			);
+
+		} );
+
+		QUnit.todo( 'camera', ( assert ) => {
+
+			assert.ok( false, 'everything\'s gonna be alright' );
+
+		} );
+
+		QUnit.todo( 'matrix', ( assert ) => {
+
+			assert.ok( false, 'everything\'s gonna be alright' );
+
+		} );
+
+		QUnit.todo( 'matrixAutoUpdate', ( assert ) => {
+
+			assert.ok( false, 'everything\'s gonna be alright' );
+
+		} );
+
+		QUnit.todo( 'pointMap', ( assert ) => {
+
+			assert.ok( false, 'everything\'s gonna be alright' );
+
+		} );
+
+		// PUBLIC
+		QUnit.todo( 'setColors', ( assert ) => {
+
+			assert.ok( false, 'everything\'s gonna be alright' );
+
+		} );
+
 		QUnit.todo( 'update', ( assert ) => {
 
 			assert.ok( false, 'everything\'s gonna be alright' );
 
 		} );
 
+		QUnit.todo( 'dispose', ( assert ) => {
+
+			assert.ok( false, 'everything\'s gonna be alright' );
+
+		} );
 
 	} );
 

+ 54 - 4
test/unit/src/helpers/DirectionalLightHelper.tests.js

@@ -1,15 +1,29 @@
 /* global QUnit */
 
-// import { DirectionalLightHelper } from '../../../../src/helpers/DirectionalLightHelper.js';
+import { DirectionalLightHelper } from '../../../../src/helpers/DirectionalLightHelper.js';
+
+import { Object3D } from '../../../../src/core/Object3D.js';
+import { DirectionalLight } from '../../../../src/lights/DirectionalLight.js';
 
 export default QUnit.module( 'Helpers', () => {
 
 	QUnit.module( 'DirectionalLightHelper', () => {
 
+		const parameters = {
+			size: 1,
+			color: 0xaaaaaa,
+			intensity: 0.8
+		};
+
 		// INHERITANCE
-		QUnit.todo( 'Extending', ( assert ) => {
+		QUnit.test( 'Extending', ( assert ) => {
 
-			assert.ok( false, 'everything\'s gonna be alright' );
+			const light = new DirectionalLight( parameters.color );
+			const object = new DirectionalLightHelper( light, parameters.size, parameters.color );
+			assert.strictEqual(
+				object instanceof Object3D, true,
+				'DirectionalLightHelper extends from Object3D'
+			);
 
 		} );
 
@@ -20,7 +34,43 @@ export default QUnit.module( 'Helpers', () => {
 
 		} );
 
-		// PUBLIC STUFF
+		// PROPERTIES
+		QUnit.test( 'type', ( assert ) => {
+
+			const light = new DirectionalLight( parameters.color );
+			const object = new DirectionalLightHelper( light, parameters.size, parameters.color );
+			assert.ok(
+				object.type === 'DirectionalLightHelper',
+				'DirectionalLightHelper.type should be DirectionalLightHelper'
+			);
+
+		} );
+
+		QUnit.todo( 'light', ( assert ) => {
+
+			assert.ok( false, 'everything\'s gonna be alright' );
+
+		} );
+
+		QUnit.todo( 'matrix', ( assert ) => {
+
+			assert.ok( false, 'everything\'s gonna be alright' );
+
+		} );
+
+		QUnit.todo( 'matrixAutoUpdate', ( assert ) => {
+
+			assert.ok( false, 'everything\'s gonna be alright' );
+
+		} );
+
+		QUnit.todo( 'color', ( assert ) => {
+
+			assert.ok( false, 'everything\'s gonna be alright' );
+
+		} );
+
+		// PUBLIC
 		QUnit.todo( 'dispose', ( assert ) => {
 
 			assert.ok( false, 'everything\'s gonna be alright' );

+ 27 - 3
test/unit/src/helpers/GridHelper.tests.js

@@ -1,15 +1,21 @@
 /* global QUnit */
 
-// import { GridHelper } from '../../../../src/helpers/GridHelper.js';
+import { GridHelper } from '../../../../src/helpers/GridHelper.js';
+
+import { LineSegments } from '../../../../src/objects/LineSegments.js';
 
 export default QUnit.module( 'Helpers', () => {
 
 	QUnit.module( 'GridHelper', () => {
 
 		// INHERITANCE
-		QUnit.todo( 'Extending', ( assert ) => {
+		QUnit.test( 'Extending', ( assert ) => {
 
-			assert.ok( false, 'everything\'s gonna be alright' );
+			const object = new GridHelper();
+			assert.strictEqual(
+				object instanceof LineSegments, true,
+				'GridHelper extends from LineSegments'
+			);
 
 		} );
 
@@ -20,6 +26,24 @@ export default QUnit.module( 'Helpers', () => {
 
 		} );
 
+		// PROPERTIES
+		QUnit.test( 'type', ( assert ) => {
+
+			const object = new GridHelper();
+			assert.ok(
+				object.type === 'GridHelper',
+				'GridHelper.type should be GridHelper'
+			);
+
+		} );
+
+		// PUBLIC
+		QUnit.todo( 'dispose', ( assert ) => {
+
+			assert.ok( false, 'everything\'s gonna be alright' );
+
+		} );
+
 	} );
 
 } );

+ 62 - 4
test/unit/src/helpers/HemisphereLightHelper.tests.js

@@ -1,15 +1,31 @@
 /* global QUnit */
 
-// import { HemisphereLightHelper } from '../../../../src/helpers/HemisphereLightHelper.js';
+import { HemisphereLightHelper } from '../../../../src/helpers/HemisphereLightHelper.js';
+
+import { Object3D } from '../../../../src/core/Object3D.js';
+import { HemisphereLight } from '../../../../src/lights/HemisphereLight.js';
 
 export default QUnit.module( 'Helpers', () => {
 
 	QUnit.module( 'HemisphereLightHelper', () => {
 
+		const parameters = {
+			size: 1,
+			color: 0xabc012,
+			skyColor: 0x123456,
+			groundColor: 0xabc012,
+			intensity: 0.6
+		};
+
 		// INHERITANCE
-		QUnit.todo( 'Extending', ( assert ) => {
+		QUnit.test( 'Extending', ( assert ) => {
 
-			assert.ok( false, 'everything\'s gonna be alright' );
+			const light = new HemisphereLight( parameters.skyColor );
+			const object = new HemisphereLightHelper( light, parameters.size, parameters.color );
+			assert.strictEqual(
+				object instanceof Object3D, true,
+				'HemisphereLightHelper extends from Object3D'
+			);
 
 		} );
 
@@ -20,7 +36,49 @@ export default QUnit.module( 'Helpers', () => {
 
 		} );
 
-		// PUBLIC STUFF
+		// PROPERTIES
+		QUnit.test( 'type', ( assert ) => {
+
+			const light = new HemisphereLight( parameters.skyColor );
+			const object = new HemisphereLightHelper( light, parameters.size, parameters.color );
+			assert.ok(
+				object.type === 'HemisphereLightHelper',
+				'HemisphereLightHelper.type should be HemisphereLightHelper'
+			);
+
+		} );
+
+		QUnit.todo( 'light', ( assert ) => {
+
+			assert.ok( false, 'everything\'s gonna be alright' );
+
+		} );
+
+		QUnit.todo( 'matrix', ( assert ) => {
+
+			assert.ok( false, 'everything\'s gonna be alright' );
+
+		} );
+
+		QUnit.todo( 'matrixAutoUpdate', ( assert ) => {
+
+			assert.ok( false, 'everything\'s gonna be alright' );
+
+		} );
+
+		QUnit.todo( 'color', ( assert ) => {
+
+			assert.ok( false, 'everything\'s gonna be alright' );
+
+		} );
+
+		QUnit.todo( 'material', ( assert ) => {
+
+			assert.ok( false, 'everything\'s gonna be alright' );
+
+		} );
+
+		// PUBLIC
 		QUnit.todo( 'dispose', ( assert ) => {
 
 			assert.ok( false, 'everything\'s gonna be alright' );

+ 38 - 4
test/unit/src/helpers/PlaneHelper.tests.js

@@ -1,15 +1,21 @@
 /* global QUnit */
 
-// import { PlaneHelper } from '../../../../src/helpers/PlaneHelper.js';
+import { PlaneHelper } from '../../../../src/helpers/PlaneHelper.js';
+
+import { Line } from '../../../../src/objects/Line.js';
 
 export default QUnit.module( 'Helpers', () => {
 
 	QUnit.module( 'PlaneHelper', () => {
 
 		// INHERITANCE
-		QUnit.todo( 'Extending', ( assert ) => {
+		QUnit.test( 'Extending', ( assert ) => {
 
-			assert.ok( false, 'everything\'s gonna be alright' );
+			const object = new PlaneHelper();
+			assert.strictEqual(
+				object instanceof Line, true,
+				'PlaneHelper extends from Line'
+			);
 
 		} );
 
@@ -20,13 +26,41 @@ export default QUnit.module( 'Helpers', () => {
 
 		} );
 
-		// PUBLIC STUFF
+		// PROPERTIES
+		QUnit.test( 'type', ( assert ) => {
+
+			const object = new PlaneHelper();
+			assert.ok(
+				object.type === 'PlaneHelper',
+				'PlaneHelper.type should be PlaneHelper'
+			);
+
+		} );
+
+		QUnit.todo( 'plane', ( assert ) => {
+
+			assert.ok( false, 'everything\'s gonna be alright' );
+
+		} );
+
+		QUnit.todo( 'size', ( assert ) => {
+
+			assert.ok( false, 'everything\'s gonna be alright' );
+
+		} );
+
+		// PUBLIC
 		QUnit.todo( 'updateMatrixWorld', ( assert ) => {
 
 			assert.ok( false, 'everything\'s gonna be alright' );
 
 		} );
 
+		QUnit.todo( 'dispose', ( assert ) => {
+
+			assert.ok( false, 'everything\'s gonna be alright' );
+
+		} );
 
 	} );
 

+ 56 - 4
test/unit/src/helpers/PointLightHelper.tests.js

@@ -1,15 +1,31 @@
 /* global QUnit */
 
-// import { PointLightHelper } from '../../../../src/helpers/PointLightHelper.js';
+import { PointLightHelper } from '../../../../src/helpers/PointLightHelper.js';
+
+import { Mesh } from '../../../../src/objects/Mesh.js';
+import { PointLight } from '../../../../src/lights/PointLight.js';
 
 export default QUnit.module( 'Helpers', () => {
 
 	QUnit.module( 'PointLightHelper', () => {
 
+		const parameters = {
+			sphereSize: 1,
+			color: 0xaaaaaa,
+			intensity: 0.5,
+			distance: 100,
+			decay: 2
+		};
+
 		// INHERITANCE
-		QUnit.todo( 'Extending', ( assert ) => {
+		QUnit.test( 'Extending', ( assert ) => {
 
-			assert.ok( false, 'everything\'s gonna be alright' );
+			const light = new PointLight( parameters.color );
+			const object = new PointLightHelper( light, parameters.sphereSize, parameters.color );
+			assert.strictEqual(
+				object instanceof Mesh, true,
+				'PointLightHelper extends from Mesh'
+			);
 
 		} );
 
@@ -20,7 +36,43 @@ export default QUnit.module( 'Helpers', () => {
 
 		} );
 
-		// PUBLIC STUFF
+		// PROPERTIES
+		QUnit.test( 'type', ( assert ) => {
+
+			const light = new PointLight( parameters.color );
+			const object = new PointLightHelper( light, parameters.sphereSize, parameters.color );
+			assert.ok(
+				object.type === 'PointLightHelper',
+				'PointLightHelper.type should be PointLightHelper'
+			);
+
+		} );
+
+		QUnit.todo( 'light', ( assert ) => {
+
+			assert.ok( false, 'everything\'s gonna be alright' );
+
+		} );
+
+		QUnit.todo( 'color', ( assert ) => {
+
+			assert.ok( false, 'everything\'s gonna be alright' );
+
+		} );
+
+		QUnit.todo( 'matrix', ( assert ) => {
+
+			assert.ok( false, 'everything\'s gonna be alright' );
+
+		} );
+
+		QUnit.todo( 'matrixAutoUpdate', ( assert ) => {
+
+			assert.ok( false, 'everything\'s gonna be alright' );
+
+		} );
+
+		// PUBLIC
 		QUnit.todo( 'dispose', ( assert ) => {
 
 			assert.ok( false, 'everything\'s gonna be alright' );

+ 27 - 3
test/unit/src/helpers/PolarGridHelper.tests.js

@@ -1,15 +1,21 @@
 /* global QUnit */
 
-// import { PolarGridHelper } from '../../../../src/helpers/PolarGridHelper.js';
+import { PolarGridHelper } from '../../../../src/helpers/PolarGridHelper.js';
+
+import { LineSegments } from '../../../../src/objects/LineSegments.js';
 
 export default QUnit.module( 'Helpers', () => {
 
 	QUnit.module( 'PolarGridHelper', () => {
 
 		// INHERITANCE
-		QUnit.todo( 'Extending', ( assert ) => {
+		QUnit.test( 'Extending', ( assert ) => {
 
-			assert.ok( false, 'everything\'s gonna be alright' );
+			const object = new PolarGridHelper();
+			assert.strictEqual(
+				object instanceof LineSegments, true,
+				'PolarGridHelper extends from LineSegments'
+			);
 
 		} );
 
@@ -20,6 +26,24 @@ export default QUnit.module( 'Helpers', () => {
 
 		} );
 
+		// PROPERTIES
+		QUnit.test( 'type', ( assert ) => {
+
+			const object = new PolarGridHelper();
+			assert.ok(
+				object.type === 'PolarGridHelper',
+				'PolarGridHelper.type should be PolarGridHelper'
+			);
+
+		} );
+
+		// PUBLIC
+		QUnit.todo( 'dispose', ( assert ) => {
+
+			assert.ok( false, 'everything\'s gonna be alright' );
+
+		} );
+
 	} );
 
 } );

+ 64 - 4
test/unit/src/helpers/SkeletonHelper.tests.js

@@ -1,15 +1,23 @@
 /* global QUnit */
 
-// import { SkeletonHelper } from '../../../../src/helpers/SkeletonHelper.js';
+import { SkeletonHelper } from '../../../../src/helpers/SkeletonHelper.js';
+
+import { LineSegments } from '../../../../src/objects/LineSegments.js';
+import { Bone } from '../../../../src/objects/Bone.js';
 
 export default QUnit.module( 'Helpers', () => {
 
 	QUnit.module( 'SkeletonHelper', () => {
 
 		// INHERITANCE
-		QUnit.todo( 'Extending', ( assert ) => {
+		QUnit.test( 'Extending', ( assert ) => {
 
-			assert.ok( false, 'everything\'s gonna be alright' );
+			const bone = new Bone();
+			const object = new SkeletonHelper( bone );
+			assert.strictEqual(
+				object instanceof LineSegments, true,
+				'SkeletonHelper extends from LineSegments'
+			);
 
 		} );
 
@@ -20,13 +28,65 @@ export default QUnit.module( 'Helpers', () => {
 
 		} );
 
-		// PUBLIC STUFF
+		// PROPERTIES
+		QUnit.test( 'type', ( assert ) => {
+
+			const bone = new Bone();
+			const object = new SkeletonHelper( bone );
+			assert.ok(
+				object.type === 'SkeletonHelper',
+				'SkeletonHelper.type should be SkeletonHelper'
+			);
+
+		} );
+
+		QUnit.todo( 'root', ( assert ) => {
+
+			assert.ok( false, 'everything\'s gonna be alright' );
+
+		} );
+
+		QUnit.todo( 'bones', ( assert ) => {
+
+			assert.ok( false, 'everything\'s gonna be alright' );
+
+		} );
+
+		QUnit.todo( 'matrix', ( assert ) => {
+
+			assert.ok( false, 'everything\'s gonna be alright' );
+
+		} );
+
+		QUnit.todo( 'matrixAutoUpdate', ( assert ) => {
+
+			assert.ok( false, 'everything\'s gonna be alright' );
+
+		} );
+
+		// PUBLIC
+		QUnit.test( 'isSkeletonHelper', ( assert ) => {
+
+			const bone = new Bone();
+			const object = new SkeletonHelper( bone );
+			assert.ok(
+				object.isSkeletonHelper,
+				'SkeletonHelper.isSkeletonHelper should be true'
+			);
+
+		} );
+
 		QUnit.todo( 'updateMatrixWorld', ( assert ) => {
 
 			assert.ok( false, 'everything\'s gonna be alright' );
 
 		} );
 
+		QUnit.todo( 'dispose', ( assert ) => {
+
+			assert.ok( false, 'everything\'s gonna be alright' );
+
+		} );
 
 	} );
 

+ 63 - 4
test/unit/src/helpers/SpotLightHelper.tests.js

@@ -1,15 +1,32 @@
 /* global QUnit */
 
-// import { SpotLightHelper } from '../../../../src/helpers/SpotLightHelper.js';
+import { SpotLightHelper } from '../../../../src/helpers/SpotLightHelper.js';
+
+import { Object3D } from '../../../../src/core/Object3D.js';
+import { SpotLight } from '../../../../src/lights/SpotLight.js';
 
 export default QUnit.module( 'Helpers', () => {
 
 	QUnit.module( 'SpotLightHelper', () => {
 
+		const parameters = {
+			color: 0xaaaaaa,
+			intensity: 0.5,
+			distance: 100,
+			angle: 0.8,
+			penumbra: 8,
+			decay: 2
+		};
+
 		// INHERITANCE
-		QUnit.todo( 'Extending', ( assert ) => {
+		QUnit.test( 'Extending', ( assert ) => {
 
-			assert.ok( false, 'everything\'s gonna be alright' );
+			const light = new SpotLight( parameters.color );
+			const object = new SpotLightHelper( light, parameters.color );
+			assert.strictEqual(
+				object instanceof Object3D, true,
+				'SpotLightHelper extends from Object3D'
+			);
 
 		} );
 
@@ -20,7 +37,49 @@ export default QUnit.module( 'Helpers', () => {
 
 		} );
 
-		// PUBLIC STUFF
+		// PROPERTIES
+		QUnit.test( 'type', ( assert ) => {
+
+			const light = new SpotLight( parameters.color );
+			const object = new SpotLightHelper( light, parameters.color );
+			assert.ok(
+				object.type === 'SpotLightHelper',
+				'SpotLightHelper.type should be SpotLightHelper'
+			);
+
+		} );
+
+		QUnit.todo( 'light', ( assert ) => {
+
+			assert.ok( false, 'everything\'s gonna be alright' );
+
+		} );
+
+		QUnit.todo( 'matrix', ( assert ) => {
+
+			assert.ok( false, 'everything\'s gonna be alright' );
+
+		} );
+
+		QUnit.todo( 'matrixAutoUpdate', ( assert ) => {
+
+			assert.ok( false, 'everything\'s gonna be alright' );
+
+		} );
+
+		QUnit.todo( 'color', ( assert ) => {
+
+			assert.ok( false, 'everything\'s gonna be alright' );
+
+		} );
+
+		QUnit.todo( 'cone', ( assert ) => {
+
+			assert.ok( false, 'everything\'s gonna be alright' );
+
+		} );
+
+		// PUBLIC
 		QUnit.todo( 'dispose', ( assert ) => {
 
 			assert.ok( false, 'everything\'s gonna be alright' );