Esempio n. 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 CreateModel_UndoCreateGameObject_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 model           = TestUtility.CreateUndoableGameObjectWithModel();
            var modelGameObject = model.gameObject;

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

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

            Assert.False(modelGameObject);
            Assert.False(model);
            Assert.False(newScene.isDirty);
            Assert.False(currentScene.isDirty);
        }
Esempio n. 3
0
        public void CreateModel_OnlyDirtiesSceneOfModel()
        {
            var currentScene = SceneManager.GetActiveScene();
            var newScene     = TestUtility.CreateAdditionalSceneAndActivate();

            Assert.False(currentScene.isDirty);
            Assert.False(newScene.isDirty);

            var model           = TestUtility.CreateUndoableGameObjectWithModel();
            var modelGameObject = model.gameObject;

            Assert.AreEqual(modelGameObject.scene, newScene);
            Assert.True(newScene.isDirty);
            Assert.False(currentScene.isDirty);
        }
        public void CreateBrush_OnlyDirtiesSceneOfBrush()
        {
            var currentScene = SceneManager.GetActiveScene();
            var newScene     = TestUtility.CreateAdditionalSceneAndActivate();

            Assert.False(currentScene.isDirty);
            Assert.False(newScene.isDirty);

            var brush           = TestUtility.CreateUndoableGameObjectWithBrush();
            var brushGameObject = brush.gameObject;

            Assert.AreEqual(brushGameObject.scene, newScene);
            Assert.True(newScene.isDirty);
            Assert.False(currentScene.isDirty);
        }
Esempio n. 5
0
        public void CreateOperation_OnlyDirtiesSceneOfOperation()
        {
            var currentScene = SceneManager.GetActiveScene();
            var newScene     = TestUtility.CreateAdditionalSceneAndActivate();

            Assert.False(currentScene.isDirty);
            Assert.False(newScene.isDirty);

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

            Assert.AreEqual(newScene, operationGameObject.scene);
            Assert.True(newScene.isDirty);
            Assert.False(currentScene.isDirty);
        }
        public void CreateComposite_OnlyDirtiesSceneOfComposite()
        {
            var currentScene = SceneManager.GetActiveScene();
            var newScene     = TestUtility.CreateAdditionalSceneAndActivate();

            Assert.False(currentScene.isDirty);
            Assert.False(newScene.isDirty);

            var composite           = TestUtility.CreateUndoableGameObjectWithComposite();
            var compositeGameObject = composite.gameObject;

            Assert.AreEqual(newScene, compositeGameObject.scene);
            Assert.True(newScene.isDirty);
            Assert.False(currentScene.isDirty);
        }
Esempio n. 7
0
        public IEnumerator CreateModel_DestroyModelGameObject_OnlyDirtiesSceneOfModel()
        {
            var currentScene = SceneManager.GetActiveScene();
            var newScene     = TestUtility.CreateAdditionalSceneAndActivate();

            Assert.False(currentScene.isDirty);
            Assert.False(newScene.isDirty);

            var model           = TestUtility.CreateUndoableGameObjectWithModel();
            var modelGameObject = model.gameObject;

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

            Undo.DestroyObjectImmediate(modelGameObject);
            yield return(null);

            Assert.False(modelGameObject);
            Assert.False(model);
            Assert.True(newScene.isDirty);
            Assert.False(currentScene.isDirty);
        }
        public IEnumerator CreateBrush_DestroyBrushComponent_OnlyDirtiesSceneOfBrush()
        {
            var currentScene = SceneManager.GetActiveScene();
            var newScene     = TestUtility.CreateAdditionalSceneAndActivate();

            Assert.False(currentScene.isDirty);
            Assert.False(newScene.isDirty);

            var brush           = TestUtility.CreateUndoableGameObjectWithBrush();
            var brushGameObject = brush.gameObject;

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

            Undo.DestroyObjectImmediate(brush);
            yield return(null);

            Assert.True(brushGameObject);
            Assert.False(brush);
            Assert.True(newScene.isDirty);
            Assert.False(currentScene.isDirty);
        }
Esempio n. 9
0
        public IEnumerator CreateOperation_DestroyOperationComponent_OnlyDirtiesSceneOfOperation()
        {
            var currentScene = SceneManager.GetActiveScene();
            var newScene     = TestUtility.CreateAdditionalSceneAndActivate();

            Assert.False(currentScene.isDirty);
            Assert.False(newScene.isDirty);

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

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

            Undo.DestroyObjectImmediate(operation);
            yield return(null);

            Assert.True(operationGameObject);
            Assert.False(operation);
            Assert.True(newScene.isDirty);
            Assert.False(currentScene.isDirty);
        }
        public IEnumerator CreateComposite_DestroyCompositeGameObject_OnlyDirtiesSceneOfComposite()
        {
            var currentScene = SceneManager.GetActiveScene();
            var newScene     = TestUtility.CreateAdditionalSceneAndActivate();

            Assert.False(currentScene.isDirty);
            Assert.False(newScene.isDirty);

            var composite           = TestUtility.CreateUndoableGameObjectWithComposite();
            var compositeGameObject = composite.gameObject;

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

            Undo.DestroyObjectImmediate(compositeGameObject);
            yield return(null);

            Assert.False(compositeGameObject);
            Assert.False(composite);
            Assert.True(newScene.isDirty);
            Assert.False(currentScene.isDirty);
        }