OSDN Git Service

three.jsをThirdPartyに追加
[webglgame/webgl_framework.git] / webglFramework / Thirdparty / three.js-master / test / unit / editor / TestNegativeCases.js
diff --git a/webglFramework/Thirdparty/three.js-master/test/unit/editor/TestNegativeCases.js b/webglFramework/Thirdparty/three.js-master/test/unit/editor/TestNegativeCases.js
new file mode 100644 (file)
index 0000000..157ab8d
--- /dev/null
@@ -0,0 +1,55 @@
+/**
+ * @author lxxxvi / https://github.com/lxxxvi
+ * Developed as part of a project at University of Applied Sciences and Arts Northwestern Switzerland (www.fhnw.ch)
+ */
+
+QUnit.module( "NegativeCases" );
+
+QUnit.test( "Test unwanted situations ", function( assert ) {
+
+       var editor = new Editor();
+
+       // illegal
+       editor.undo();
+       assert.ok( editor.history.undos.length == 0, "OK, (illegal) undo did not affect the undo history" );
+       assert.ok( editor.history.redos.length == 0, "OK, (illegal) undo did not affect the redo history" );
+
+       // illegal
+       editor.redo();
+       assert.ok( editor.history.undos.length == 0, "OK, (illegal) redo did not affect the undo history" );
+       assert.ok( editor.history.redos.length == 0, "OK, (illegal) redo did not affect the redo history" );
+
+
+       var box = aBox();
+       var cmd = new AddObjectCommand( box );
+       cmd.updatable = false;
+       editor.execute( cmd );
+
+       assert.ok( editor.history.undos.length == 1, "OK, execute changed undo history" );
+       assert.ok( editor.history.redos.length == 0, "OK, execute did not change redo history" );
+
+       // illegal
+       editor.redo();
+       assert.ok( editor.history.undos.length == 1, "OK, (illegal) redo did not affect the undo history" );
+       assert.ok( editor.history.redos.length == 0, "OK, (illegal) redo did not affect the redo history" );
+
+
+       editor.undo();
+       assert.ok( editor.history.undos.length == 0, "OK, undo changed the undo history" );
+       assert.ok( editor.history.redos.length == 1, "OK, undo changed the redo history" );
+
+       // illegal
+       editor.undo();
+       assert.ok( editor.history.undos.length == 0, "OK, (illegal) undo did not affect the undo history" );
+       assert.ok( editor.history.redos.length == 1, "OK, (illegal) undo did not affect the redo history" );
+
+       editor.redo();
+       assert.ok( editor.history.undos.length == 1, "OK, redo changed the undo history" );
+       assert.ok( editor.history.redos.length == 0, "OK, undo changed the redo history" );
+
+       // illegal
+       editor.redo();
+       assert.ok( editor.history.undos.length == 1, "OK, (illegal) did not affect the undo history" );
+       assert.ok( editor.history.redos.length == 0, "OK, (illegal) did not affect the redo history" );
+
+} );