Exemplo n.º 1
0
        public IEnumerator Model1WithWithGameObjectWithBrush_AddModel2ToGameObject_BrushHasModel2AsTree()
        {
            var model1           = TestUtility.CreateUndoableGameObjectWithModel("model1");
            var model1GameObject = model1.gameObject;

            var model2GameObject = TestUtility.CreateGameObject("model2");

            model2GameObject.transform.parent = model1GameObject.transform;

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

            brush.transform.parent = model2GameObject.transform;

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

            Assert.True(model1GameObject);
            Assert.True(model1);
            Assert.True(model2GameObject);
            Assert.True(brushGameObject);
            Assert.True(brush);

            Assert.AreEqual(1, CSGManager.TreeCount, "Expected 1 Tree to Exist");
            Assert.AreEqual(1, CSGManager.TreeBrushCount, "Expected 1 TreeBrush to Exist");
            Assert.AreEqual(2, CSGManager.TreeNodeCount, "Expected 2 TreeNodes to Exist");
            Assert.AreEqual(1, model1.Node.Count);
            Assert.AreEqual(model1.Node.NodeID, brush.TopNode.Tree.NodeID);

            var model2 = TestUtility.CreateUndoableModelComponent(model2GameObject);

            yield return(null);

            Assert.True(model1GameObject);
            Assert.True(model1);
            Assert.True(model2GameObject);
            Assert.True(model2);
            Assert.True(brushGameObject);
            Assert.True(brush);

            Assert.AreEqual(2, CSGManager.TreeCount, "Expected 2 Trees to Exist");
            Assert.AreEqual(1, CSGManager.TreeBrushCount, "Expected 1 TreeBrush to Exist");
            Assert.AreEqual(3, CSGManager.TreeNodeCount, "Expected 3 TreeNodes to Exist");
            Assert.AreEqual(0, model1.Node.Count);
            Assert.AreEqual(1, model2.Node.Count);
            Assert.AreEqual(model2.Node.NodeID, brush.TopNode.Tree.NodeID);
        }
Exemplo n.º 2
0
        public IEnumerator GameObjectWithBrush_AddModelToGameObject_BrushHasModelAsTree()
        {
            var modelGameObject = TestUtility.CreateGameObject("model");

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

            brush.transform.parent = modelGameObject.transform;

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

            Assert.True(modelGameObject);
            Assert.True(brushGameObject);
            Assert.True(brush);

            Assert.AreEqual(1, CSGManager.TreeCount, "Expected 1 Tree to Exist"); // default model
            Assert.AreEqual(1, CSGManager.TreeBrushCount, "Expected 1 TreeBrush to Exist");
            Assert.AreEqual(2, CSGManager.TreeNodeCount, "Expected 2 TreeNodes to Exist");
            Assert.AreEqual(CSGTreeNode.InvalidNode.NodeID, brush.TopNode.Parent.NodeID);

            var model = TestUtility.CreateUndoableModelComponent(modelGameObject);

            yield return(null);

            Assert.True(modelGameObject);
            Assert.True(model);
            Assert.True(brushGameObject);
            Assert.True(brush);

            Assert.AreEqual(1, CSGManager.TreeCount, "Expected 1 Tree to Exist"); // new model only, default model should've been destroyed
            Assert.AreEqual(1, CSGManager.TreeBrushCount, "Expected 1 TreeBrush to Exist");
            Assert.AreEqual(2, CSGManager.TreeNodeCount, "Expected 2 TreeNodes to Exist");
            Assert.AreEqual(1, model.Node.Count);
            Assert.AreEqual(model.Node.NodeID, brush.TopNode.Tree.NodeID);
        }