Browse Source

add unit test for face3

simonThiele 9 năm trước cách đây
mục cha
commit
0e886bf700
1 tập tin đã thay đổi với 58 bổ sung0 xóa
  1. 58 0
      test/unit/core/Face3.js

+ 58 - 0
test/unit/core/Face3.js

@@ -0,0 +1,58 @@
+/**
+ * @author simonThiele / https://github.com/simonThiele
+ */
+
+module( "Face3" );
+
+test( "copy", function() {
+	var instance = new THREE.Face3(0, 1, 2, new THREE.Vector3(0, 1, 0), new THREE.Color(0.25, 0.5, 0.75), 2);
+	var copiedInstance = instance.copy(instance);
+
+	checkCopy(copiedInstance);
+	checkVertexAndColors(copiedInstance);
+});
+
+test( "copy", function() {
+	var instance = new THREE.Face3(0, 1, 2,
+		[new THREE.Vector3(0, 1, 0), new THREE.Vector3(1, 0, 1)],
+		[new THREE.Color(0.25, 0.5, 0.75), new THREE.Color(1, 0, 0.4)],
+		2);
+	var copiedInstance = instance.copy(instance);
+
+	checkCopy(copiedInstance);
+	checkVertexAndColorArrays(copiedInstance);
+});
+
+test( "clone", function() {
+	var instance = new THREE.Face3(0, 1, 2, new THREE.Vector3(0, 1, 0), new THREE.Color(0.25, 0.5, 0.75), 2);
+	var copiedInstance = instance.clone();
+
+	checkCopy(copiedInstance);
+	checkVertexAndColors(copiedInstance);
+});
+
+function checkCopy(copiedInstance) {
+	ok( copiedInstance instanceof THREE.Face3, "copy created the correct type" );
+	ok(
+		copiedInstance.a === 0 &&
+		copiedInstance.b === 1 &&
+		copiedInstance.c === 2 &&
+		copiedInstance.materialIndex === 2
+		,"properties where copied" );
+}
+
+function checkVertexAndColors(copiedInstance) {
+	ok(
+		copiedInstance.normal.x === 0 && copiedInstance.normal.y === 1 && copiedInstance.normal.z === 0 &&
+		copiedInstance.color.r === 0.25 && copiedInstance.color.g === 0.5 && copiedInstance.color.b === 0.75
+		,"properties where copied" );
+}
+
+function checkVertexAndColorArrays(copiedInstance) {
+	ok(
+		copiedInstance.vertexNormals[0].x === 0 && copiedInstance.vertexNormals[0].y === 1 && copiedInstance.vertexNormals[0].z === 0 &&
+		copiedInstance.vertexNormals[1].x === 1 && copiedInstance.vertexNormals[1].y === 0 && copiedInstance.vertexNormals[1].z === 1 &&
+		copiedInstance.vertexColors[0].r === 0.25 && copiedInstance.vertexColors[0].g === 0.5 && copiedInstance.vertexColors[0].b === 0.75 &&
+		copiedInstance.vertexColors[1].r === 1 && copiedInstance.vertexColors[1].g === 0 && copiedInstance.vertexColors[1].b === 0.4
+		,"properties where copied" );
+}