1+ module ( "CmdSetGeometryValue" ) ;
2+
3+ test ( "Test CmdSetGeometryValue (Undo and Redo)" , function ( ) {
4+
5+ var editor = new Editor ( ) ;
6+ var box = aBox ( 'The Box' ) ;
7+
8+ var cmd = new CmdAddObject ( box ) ;
9+ cmd . updatable = false ;
10+ editor . execute ( cmd ) ;
11+
12+ var testData = [
13+ { uuid : THREE . Math . generateUUID ( ) , name : 'Bruno' } ,
14+ { uuid : THREE . Math . generateUUID ( ) , name : 'Jack' }
15+ ] ;
16+
17+ for ( var i = 0 ; i < testData . length ; i ++ ) {
18+
19+ var keys = Object . keys ( testData [ i ] ) ;
20+
21+ keys . map ( function ( key ) {
22+
23+ cmd = new CmdSetGeometryValue ( box , key , testData [ i ] [ key ] ) ;
24+ cmd . updatable = false ;
25+ editor . execute ( cmd ) ;
26+
27+ } ) ;
28+
29+ }
30+
31+ ok ( box . geometry . name == testData [ 1 ] . name , "OK, box.geometry.name is correct after executes" ) ;
32+ ok ( box . geometry . uuid == testData [ 1 ] . uuid , "OK, box.geometry.uuid is correct after executes" ) ;
33+
34+ editor . undo ( ) ;
35+ editor . undo ( ) ;
36+
37+ ok ( box . geometry . name == testData [ 0 ] . name , "OK, box.geometry.name is correct after undos" ) ;
38+ ok ( box . geometry . uuid == testData [ 0 ] . uuid , "OK, box.geometry.uuid is correct after undos" ) ;
39+
40+ editor . redo ( ) ;
41+ editor . redo ( ) ;
42+
43+ ok ( box . geometry . name == testData [ 1 ] . name , "OK, box.geometry.name is correct after executes" ) ;
44+ ok ( box . geometry . uuid == testData [ 1 ] . uuid , "OK, box.geometry.uuid is correct after executes" ) ;
45+
46+ } ) ;
0 commit comments