瀏覽代碼

added test for CmdSetGeometryValue

Mario Schuettel 10 年之前
父節點
當前提交
2e129a83bf
共有 2 個文件被更改,包括 48 次插入0 次删除
  1. 46 0
      test/unit/editor/TestCmdSetGeometryValue.js
  2. 2 0
      test/unit/unittests_editor.html

+ 46 - 0
test/unit/editor/TestCmdSetGeometryValue.js

@@ -0,0 +1,46 @@
+module( "CmdSetGeometryValue" );
+
+test( "Test CmdSetGeometryValue (Undo and Redo)", function() {
+
+	var editor = new Editor();
+	var box = aBox( 'The Box' );
+
+	var cmd = new CmdAddObject( box );
+	cmd.updatable = false;
+	editor.execute( cmd );
+
+	var testData = [
+		{ uuid: THREE.Math.generateUUID(), name: 'Bruno' },
+		{ uuid: THREE.Math.generateUUID(), name: 'Jack' }
+	];
+
+	for( var i = 0; i < testData.length; i++ ) {
+
+		var keys = Object.keys( testData[ i ] );
+
+		keys.map( function( key ) {
+
+			cmd = new CmdSetGeometryValue( box, key, testData[ i ][ key ] );
+			cmd.updatable = false;
+			editor.execute( cmd );
+
+		});
+
+	}
+
+	ok( box.geometry.name == testData[ 1 ].name, "OK, box.geometry.name is correct after executes" );
+	ok( box.geometry.uuid == testData[ 1 ].uuid, "OK, box.geometry.uuid is correct after executes" );
+
+	editor.undo();
+	editor.undo();
+
+	ok( box.geometry.name == testData[ 0 ].name, "OK, box.geometry.name is correct after undos" );
+	ok( box.geometry.uuid == testData[ 0 ].uuid, "OK, box.geometry.uuid is correct after undos" );
+
+	editor.redo();
+	editor.redo();
+
+	ok( box.geometry.name == testData[ 1 ].name, "OK, box.geometry.name is correct after executes" );
+	ok( box.geometry.uuid == testData[ 1 ].uuid, "OK, box.geometry.uuid is correct after executes" );
+
+});

+ 2 - 0
test/unit/unittests_editor.html

@@ -79,6 +79,7 @@
 <script src="../../editor/js/CmdRemoveScript.js"></script>
 <script src="../../editor/js/CmdRemoveScript.js"></script>
 <script src="../../editor/js/CmdSetColor.js"></script>
 <script src="../../editor/js/CmdSetColor.js"></script>
 <script src="../../editor/js/CmdSetGeometry.js"></script>
 <script src="../../editor/js/CmdSetGeometry.js"></script>
+<script src="../../editor/js/CmdSetGeometryValue.js"></script>
 <script src="../../editor/js/CmdSetPosition.js"></script>
 <script src="../../editor/js/CmdSetPosition.js"></script>
 <script src="../../editor/js/CmdSetRotation.js"></script>
 <script src="../../editor/js/CmdSetRotation.js"></script>
 <script src="../../editor/js/CmdSetScale.js"></script>
 <script src="../../editor/js/CmdSetScale.js"></script>
@@ -101,6 +102,7 @@
 <script src="editor/TestCmdRemoveScript.js"></script>
 <script src="editor/TestCmdRemoveScript.js"></script>
 <script src="editor/TestCmdSetColor.js"></script>
 <script src="editor/TestCmdSetColor.js"></script>
 <script src="editor/TestCmdSetGeometry.js"></script>
 <script src="editor/TestCmdSetGeometry.js"></script>
+<script src="editor/TestCmdSetGeometryValue.js"></script>
 <script src="editor/TestCmdSetPosition.js"></script>
 <script src="editor/TestCmdSetPosition.js"></script>
 <script src="editor/TestCmdSetRotation.js"></script>
 <script src="editor/TestCmdSetRotation.js"></script>
 <script src="editor/TestCmdSetScale.js"></script>
 <script src="editor/TestCmdSetScale.js"></script>