|
@@ -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" );
|
|
|
+
|
|
|
+});
|