public IEnumerator Operation1WithWithGameObjectWithBrush_AddOperation2ToGameObject_BrushHasOperation2AsParent() { var operation1 = TestUtility.CreateUndoableGameObjectWithOperation("operation1"); var operation1GameObject = operation1.gameObject; var operation2GameObject = TestUtility.CreateGameObject("operation2"); operation2GameObject.transform.parent = operation1GameObject.transform; var brush = TestUtility.CreateUndoableGameObjectWithBrush("brush"); var brushGameObject = brush.gameObject; brush.transform.parent = operation2GameObject.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(operation1GameObject); Assert.True(operation1); Assert.True(operation2GameObject); Assert.True(brushGameObject); Assert.True(brush); Assert.AreEqual(1, CSGManager.TreeBranchCount, "Expected 1 TreeBranch to Exist"); Assert.AreEqual(1, CSGManager.TreeBrushCount, "Expected 1 TreeBrush to Exist"); Assert.AreEqual(3, CSGManager.TreeNodeCount, "Expected 3 TreeNodes to Exist"); Assert.AreEqual(1, operation1.Node.Count); Assert.AreEqual(operation1.Node.NodeID, brush.TopNode.Parent.NodeID); var operation2 = TestUtility.CreateUndoableOperationComponent(operation2GameObject); yield return(null); Assert.True(operation1GameObject); Assert.True(operation1); Assert.True(operation2GameObject); Assert.True(operation2); Assert.True(brushGameObject); Assert.True(brush); Assert.AreEqual(2, CSGManager.TreeBranchCount, "Expected 2 TreeBranches to Exist"); Assert.AreEqual(1, CSGManager.TreeBrushCount, "Expected 1 TreeBrush to Exist"); Assert.AreEqual(4, CSGManager.TreeNodeCount, "Expected 4 TreeNodes to Exist"); Assert.AreEqual(1, operation2.Node.Count); Assert.AreEqual(1, operation1.Node.Count); Assert.AreEqual(operation1.Node.NodeID, operation2.Node.Parent.NodeID); Assert.AreEqual(operation2.Node.NodeID, brush.TopNode.Parent.NodeID); }
public IEnumerator GameObjectWithBrush_AddOperationToGameObject_BrushHasOperationAsParent() { var operationGameObject = TestUtility.CreateGameObject("operation"); var brush = TestUtility.CreateUndoableGameObjectWithBrush("brush"); var brushGameObject = brush.gameObject; brush.transform.parent = operationGameObject.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(operationGameObject); Assert.True(brushGameObject); Assert.True(brush); Assert.AreEqual(0, CSGManager.TreeBranchCount, "Expected 0 TreeBranches to Exist"); 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 operation = TestUtility.CreateUndoableOperationComponent(operationGameObject); yield return(null); Assert.True(operationGameObject); Assert.True(operation); Assert.True(brushGameObject); Assert.True(brush); Assert.AreEqual(1, CSGManager.TreeBranchCount, "Expected 1 TreeBranch to Exist"); Assert.AreEqual(1, CSGManager.TreeBrushCount, "Expected 1 TreeBrush to Exist"); Assert.AreEqual(3, CSGManager.TreeNodeCount, "Expected 3 TreeNodes to Exist"); Assert.AreEqual(1, operation.Node.Count); Assert.AreEqual(operation.Node.NodeID, brush.TopNode.Parent.NodeID); }