Beispiel #1
0
        public IEnumerator CreateOperation_UndoCreateComponent_DoesNotDirtyAnyScene()
        {
            var currentScene = SceneManager.GetActiveScene();
            var newScene     = TestUtility.CreateAdditionalSceneAndActivate();

            Assert.False(currentScene.isDirty);
            Assert.False(newScene.isDirty);
            Undo.FlushUndoRecordObjects();
            Undo.IncrementCurrentGroup();
            yield return(null);

            var operation           = TestUtility.CreateGameObjectWithUndoableBrushComponent();
            var operationGameObject = operation.gameObject;

            Assert.AreEqual(newScene, operationGameObject.scene);
            Assert.True(newScene.isDirty);
            Assert.False(currentScene.isDirty);

            Undo.PerformUndo();
            yield return(null);

            Assert.True(operationGameObject);
            Assert.False(operation);
            Assert.False(newScene.isDirty);
            Assert.False(currentScene.isDirty);
        }
        public IEnumerator CreateBrush_UndoCreateComponent_BrushDoesNotExist()
        {
            var scene           = TestUtility.defaultScene;
            var brush           = TestUtility.CreateGameObjectWithUndoableBrushComponent();
            var brushGameObject = brush.gameObject;

            Assert.AreEqual(0, CSGManager.TreeBrushCount, "Expected 0 TreeBrushes to Exist");
            Assert.AreEqual(0, CSGManager.TreeNodeCount, "Expected 0 TreeNodes to Exist");
            Undo.FlushUndoRecordObjects();
            Undo.IncrementCurrentGroup();
            yield return(null);

            Assert.AreEqual(1, CSGManager.TreeBrushCount, "Expected 1 TreeBrush to Exist");
            Assert.AreEqual(2, CSGManager.TreeNodeCount, "Expected 2 TreeNodes to Exist");

            Undo.PerformUndo();
            yield return(null);

            Assert.True(brushGameObject);
            Assert.False(brush);
            Assert.AreEqual(0, CSGManager.TreeBrushCount, "Expected 0 TreeBrushes to Exist");
            Assert.AreEqual(0, CSGManager.TreeNodeCount, "Expected 0 TreeNodes to Exist");
            Assert.AreEqual(0, CSGNodeHierarchyManager.RootCount(scene));
        }