Пример #1
0
        public static void PerlinNoiseNodeToDebugNodeParsedCommands()
        {
            var builder = GraphBuilder.NewGraph <WorldGraph>()
                          .NewNode(typeof(NodePerlinNoise2D), "perlin")
                          .NewNode(typeof(NodeDebugInfo), "debug")
                          .Link("perlin", "debug");

            //list of the expected created commands
            List <BaseGraphCommand> expectedCommands = new List <BaseGraphCommand>()
            {
                new BaseGraphCommand(typeof(NodePerlinNoise2D), "perlin"),
                new BaseGraphCommand(typeof(NodeDebugInfo), "debug"),
                new BaseGraphCommand("perlin", "debug"),
            };

            //get the commands as string
            var builderCommands = builder.GetCommands();

            for (int i = 0; i < expectedCommands.Count; i++)
            {
                //Parse the command and get the resulting command object
                BaseGraphCommand cmd = BaseGraphCLI.Parse(builderCommands[i]);

                Assert.That(cmd == expectedCommands[i]);
            }
        }
        public static void WhiteSpaceLinkCommand()
        {
            BaseGraphCommand cmd = BaseGraphCLI.Parse("    	 	 	Link 		 	 node1   	node2	 	      ");

            Assert.That(cmd.type == BaseGraphCommandType.Link);
            Assert.That(cmd.fromNodeName == "node1");
            Assert.That(cmd.toNodeName == "node2");
        }
        public static void WellFormatedLinkCommandNameWhitespaces()
        {
            string           s   = BaseGraphCLI.GenerateLinkCommand("node 1", "node 2");
            BaseGraphCommand cmd = BaseGraphCLI.Parse(s);

            Assert.That(cmd.type == BaseGraphCommandType.Link);
            Assert.That(cmd.fromNodeName == "node 1");
            Assert.That(cmd.toNodeName == "node 2");
        }
        public static void WhiteSpaceNewNodeWithPositionCommand()
        {
            BaseGraphCommand cmd = BaseGraphCLI.Parse("  	  NewNode 	      NodeAdd  	    add  	    (  	 42,   -42 	   )	 ");

            Assert.That(cmd.type == BaseGraphCommandType.NewNodePosition);
            Assert.That(cmd.nodeType == typeof(NodeAdd));
            Assert.That(cmd.name == "add");
            Assert.That(cmd.forcePositon == true);
            Assert.That(cmd.position == new Vector2(42, -42));
        }
        public static void WellFormatedWhitespaceNewNodeCommand()
        {
            string           s   = BaseGraphCLI.GenerateNewNodeCommand(typeof(NodeAdd), "add node name");
            BaseGraphCommand cmd = BaseGraphCLI.Parse(s);

            Assert.That(cmd.type == BaseGraphCommandType.NewNode);
            Assert.That(cmd.nodeType == typeof(NodeAdd));
            Assert.That(cmd.name == "add node name");
            Assert.That(cmd.forcePositon == false);
        }
        public static void WellFormatedGraphAttributeCommand()
        {
            string s = BaseGraphCLI.GenerateGraphAttributeCommand("field", 12.5f);

            BaseGraphCommand cmd = BaseGraphCLI.Parse(s);

            Assert.That(cmd.type == BaseGraphCommandType.GraphAttribute);
            Assert.That(cmd.graphFieldName == "field");
            Assert.That(cmd.graphFieldValue.Equals(12.5f));
        }
        public static void WellFormatedNewNodeWithPositionCommand()
        {
            string           s   = BaseGraphCLI.GenerateNewNodeCommand(typeof(NodeAdd), "addName", new Vector2(42, -42));
            BaseGraphCommand cmd = BaseGraphCLI.Parse(s);

            Assert.That(cmd.type == BaseGraphCommandType.NewNodePosition, "Bad command type: " + cmd.type + " instead of " + BaseGraphCommandType.NewNodePosition);
            Assert.That(cmd.nodeType == typeof(NodeAdd), "Bad node type: " + cmd.nodeType + " instead of " + typeof(NodeAdd));
            Assert.That(cmd.name == "addName", "Bad node name: " + cmd.name + " instead of addName");
            Assert.That(cmd.forcePositon == true, "Forceposition is false but expected to be true");
            Assert.That(cmd.position == new Vector2(42, -42), "Bad node position: " + cmd.position + " instead of " + new Vector2(42, -42));
        }
        public static void WellFormatedLinkAnchorNameCommand()
        {
            string           s   = BaseGraphCLI.GenerateLinkAnchorNameCommand("node1", "a1", "node2", "a2");
            BaseGraphCommand cmd = BaseGraphCLI.Parse(s);

            Assert.That(cmd.type == BaseGraphCommandType.LinkAnchorName);
            Assert.That(cmd.fromNodeName == "node1");
            Assert.That(cmd.toNodeName == "node2");
            Assert.That(cmd.fromAnchorFieldName == "a1");
            Assert.That(cmd.toAnchorFieldName == "a2");
        }
        public static void WellFormatedLinkAnchorCommand()
        {
            string           s   = BaseGraphCLI.GenerateLinkAnchorCommand("node1", 1, "node2", 4);
            BaseGraphCommand cmd = BaseGraphCLI.Parse(s);

            Assert.That(cmd.type == BaseGraphCommandType.LinkAnchor);
            Assert.That(cmd.fromNodeName == "node1");
            Assert.That(cmd.toNodeName == "node2");
            Assert.That(cmd.fromAnchorIndex == 1);
            Assert.That(cmd.toAnchorIndex == 4);
        }
        public static void WellFormatedGraphAttributeTypesCommand()
        {
            string           s   = BaseGraphCLI.GenerateGraphAttributeCommand("field", true);
            BaseGraphCommand cmd = BaseGraphCLI.Parse(s);

            Assert.That(cmd.graphFieldValue.Equals(true));

            s   = BaseGraphCLI.GenerateGraphAttributeCommand("field", 12);
            cmd = BaseGraphCLI.Parse(s);

            Assert.That(cmd.graphFieldValue.Equals(12));
        }
        public static void WellFormatedNewNodeWithPositionAndDataCommand()
        {
            string s = BaseGraphCLI.GenerateNewNodeCommand(typeof(NodePerlinNoise2D), "perlin noise", new Vector2(21, 84), new BaseGraphCLIAttributes {
                { "persistence", 1.4f }, { "octaves", 2 }
            });
            BaseGraphCommand cmd = BaseGraphCLI.Parse(s);

            var parsedAttrs     = Jsonizer.Parse(cmd.attributes);
            var persistenceAttr = parsedAttrs[0];
            var octavesAttr     = parsedAttrs[1];

            Assert.That(persistenceAttr.first == "persistence", "The persistence name expected to be 'persistence' but was '" + persistenceAttr.first + "'");
            Assert.That((float)persistenceAttr.second == 1.4f, "The persistence value expected to be 1.4 but was '" + persistenceAttr.second + "'");
            Assert.That(octavesAttr.first == "octaves", "The octaves name expected to be 'octaves' but was '" + octavesAttr.first + "'");
            Assert.That((int)octavesAttr.second == 2, "The octaves value expected to be 2 but was '" + octavesAttr.second + "'");
        }
Пример #12
0
        public static void SliderNodeToAddNodeWithAnchorLink()
        {
            var builder = GraphBuilder.NewGraph <WorldGraph>()
                          .NewNode <NodeSlider>("s1")
                          .NewNode <NodeSlider>("s2")
                          .NewNode <NodeSlider>("s3")
                          .NewNode <NodeSlider>("s4")
                          .NewNode <NodeAdd>("add")
                          .Link("s1", "outValue", "add", "values")
                          .Link("s2", "outValue", "add", "values")
                          .Link("s3", 1, "add", 1)
                          .Link("s4", 1, "add", 1);

            var expectedCommands = new List <BaseGraphCommand>()
            {
                new BaseGraphCommand(typeof(NodeSlider), "s1"),
                new BaseGraphCommand(typeof(NodeSlider), "s2"),
                new BaseGraphCommand(typeof(NodeSlider), "s3"),
                new BaseGraphCommand(typeof(NodeSlider), "s4"),
                new BaseGraphCommand(typeof(NodeAdd), "add"),
                new BaseGraphCommand("s1", "outValue", "add", "values"),
                new BaseGraphCommand("s2", "outValue", "add", "values"),
                new BaseGraphCommand("s3", 1, "add", 1),
                new BaseGraphCommand("s4", 1, "add", 1),
            };

            var commands = builder.GetCommands();

            for (int i = 0; i < expectedCommands.Count; i++)
            {
                //Parse the command and get the resulting command object
                BaseGraphCommand cmd = BaseGraphCLI.Parse(commands[i]);

                Assert.That(cmd == expectedCommands[i]);
            }
        }