コード例 #1
0
ファイル: NodeToCodeTest.cs プロジェクト: monikaprabhu/Dynamo
        public void TestShortName1()
        {
            OpenModel(@"core\node2code\shortName1.dyn");
            var nodes  = CurrentDynamoModel.CurrentWorkspace.Nodes;
            var engine = CurrentDynamoModel.EngineController;

            var result = engine.ConvertNodesToCode(nodes, nodes);

            result = NodeToCodeUtils.ConstantPropagationForTemp(result, Enumerable.Empty <string>());
            NodeToCodeUtils.ReplaceWithUnqualifiedName(engine.LibraryServices.LibraryManagementCore, result.AstNodes);
            Assert.IsTrue(result != null && result.AstNodes != null);

            var expr = result.AstNodes.Last() as BinaryExpressionNode;

            Assert.IsNotNull(expr);
            Assert.AreEqual("Point.ByCoordinates(t1, 0)", expr.RightNode.ToString());
        }
コード例 #2
0
        public void TestUnqualifiedNameReplacer6()
        {
            OpenModel(@"core\node2code\unqualifiedName5.dyn");
            var nodes  = ViewModel.CurrentSpaceViewModel.Model.Nodes;
            var engine = ViewModel.Model.EngineController;

            var result = engine.ConvertNodesToCode(nodes, nodes);

            result = NodeToCodeUtils.ConstantPropagationForTemp(result, Enumerable.Empty <string>());
            NodeToCodeUtils.ReplaceWithUnqualifiedName(engine.LibraryServices.LibraryManagementCore, result.AstNodes);
            Assert.True(result != null && result.AstNodes != null);

            var expr = result.AstNodes.Last() as BinaryExpressionNode;

            Assert.IsNotNull(expr);
            Assert.IsTrue(expr.RightNode.ToString().Equals("t1.DistanceTo(t2)"));
        }
コード例 #3
0
ファイル: NodeToCodeTest.cs プロジェクト: monikaprabhu/Dynamo
        public void TestUnqualifiedNameReplacer1()
        {
            var functionCall = AstFactory.BuildFunctionCall(
                "Autodesk.DesignScript.Geometry.Point",
                "ByCoordinates",
                new List <AssociativeNode> {
                new IntNode(1), new IntNode(2)
            });
            var lhs = AstFactory.BuildIdentifier("lhs");
            var ast = AstFactory.BuildBinaryExpression(lhs, functionCall, ProtoCore.DSASM.Operator.assign);

            NodeToCodeUtils.ReplaceWithUnqualifiedName(
                CurrentDynamoModel.EngineController.LibraryServices.LibraryManagementCore,
                new [] { ast });

            Assert.AreEqual("Point.ByCoordinates(1, 2)", ast.RightNode.ToString());
        }
コード例 #4
0
ファイル: NodeToCodeTest.cs プロジェクト: monikaprabhu/Dynamo
        public void TestUnqualifiedNameReplacer4()
        {
            // 1 -> Autodesk.DesignScript.Geometry.Point.ByCoordinates(x, x);
            OpenModel(@"core\node2code\unqualifiedName3.dyn");
            var nodes  = CurrentDynamoModel.CurrentWorkspace.Nodes;
            var engine = CurrentDynamoModel.EngineController;

            var result = engine.ConvertNodesToCode(nodes, nodes);

            result = NodeToCodeUtils.ConstantPropagationForTemp(result, Enumerable.Empty <string>());
            NodeToCodeUtils.ReplaceWithUnqualifiedName(engine.LibraryServices.LibraryManagementCore, result.AstNodes);
            Assert.IsNotNull(result);
            Assert.IsNotNull(result.AstNodes);

            var expr = result.AstNodes.Last() as BinaryExpressionNode;

            Assert.IsNotNull(expr);
            Assert.AreEqual("Point.ByCoordinates(x, x)", expr.RightNode.ToString());
        }
コード例 #5
0
        public void TestUnqualifiedNameReplacer5()
        {
            // 1 -> Autodesk.DesignScript.Geometry.Point.ByCoordinates(x, x);
            OpenModel(@"core\node2code\unqualifiedName4.dyn");
            var nodes  = ViewModel.CurrentSpaceViewModel.Model.Nodes;
            var engine = ViewModel.Model.EngineController;

            var result = engine.ConvertNodesToCode(nodes, nodes);

            result = NodeToCodeUtils.ConstantPropagationForTemp(result, Enumerable.Empty <string>());
            NodeToCodeUtils.ReplaceWithUnqualifiedName(engine.LibraryServices.LibraryManagementCore, result.AstNodes);
            Assert.True(result != null && result.AstNodes != null);

            var expr1 = result.AstNodes.First() as BinaryExpressionNode;
            var expr2 = result.AstNodes.Last() as BinaryExpressionNode;

            Assert.IsNotNull(expr1);
            Assert.IsNotNull(expr2);

            Assert.IsTrue(expr1.RightNode.ToString().Equals("Point.ByCoordinates(0, 0)"));
            Assert.IsTrue(expr2.RightNode.ToString().Equals("Point.ByCoordinates(0, 0)"));
        }