示例#1
0
        public void ParsePropertyWithExtension()
        {
            var actual = MarkupExtensionParser.Assignment.Parse("Value={Dummy}");
            var markupExtensionNode = new MarkupExtensionNode(new IdentifierNode("DummyExtension"));

            Assert.AreEqual(new AssignmentNode("Value", markupExtensionNode), actual);
        }
示例#2
0
        public void NameOnly()
        {
            var tree                 = new MarkupExtensionNode(new IdentifierNode("DummyExtension"));
            var sut                  = new MarkupExtensionNodeToXamlNodesConverter(RuntimeTypeSource);
            var actualNodes          = sut.ParseMarkupExtensionNode(tree).ToList();
            var expectedInstructions = new List <Instruction>
            {
                X.StartObject <DummyExtension>(),
                X.EndObject(),
            };

            Assert.Equal(expectedInstructions, actualNodes);
        }
        public void NameOnly()
        {
            var tree                 = new MarkupExtensionNode(new IdentifierNode("DummyExtension"));
            var sut                  = new MarkupExtensionNodeToXamlNodesConverter(WiringContext);
            var actualNodes          = sut.ParseMarkupExtensionNode(tree).ToList();
            var expectedInstructions = new List <XamlInstruction>
            {
                X.StartObject <DummyExtension>(),
                X.EndObject(),
            };

            CollectionAssert.AreEqual(expectedInstructions, actualNodes);
        }
示例#4
0
        public void NameAndAttribute()
        {
            var tree = new MarkupExtensionNode(new IdentifierNode("DummyExtension"), new OptionsCollection {
                new PropertyOption("Property", new StringNode("Value"))
            });
            var sut         = new MarkupExtensionNodeToXamlNodesConverter(RuntimeTypeSource);
            var actualNodes = sut.ParseMarkupExtensionNode(tree).ToList();

            var expectedInstructions = new List <Instruction>
            {
                X.StartObject <DummyExtension>(),
                X.StartMember <DummyExtension>(d => d.Property),
                X.Value("Value"),
                X.EndMember(),
                X.EndObject(),
            };

            Assert.Equal(expectedInstructions, actualNodes);
        }
示例#5
0
        public void PositionalOption()
        {
            var tree = new MarkupExtensionNode(new IdentifierNode("DummyExtension"), new OptionsCollection
            {
                new PositionalOption("Option")
            });
            var sut         = new MarkupExtensionNodeToXamlNodesConverter(RuntimeTypeSource);
            var actualNodes = sut.ParseMarkupExtensionNode(tree).ToList();

            var expectedInstructions = new Collection <Instruction>
            {
                X.StartObject <DummyExtension>(),
                X.MarkupExtensionArguments(),
                X.Value("Option"),
                X.EndMember(),
                X.EndObject(),
            };

            Assert.Equal(expectedInstructions, actualNodes);
        }
        public void NameAndTwoAttributes()
        {
            var tree = new MarkupExtensionNode(new IdentifierNode("DummyExtension"), new OptionsCollection
            {
                new PropertyOption("Property", new StringNode("Value")),
                new PropertyOption("AnotherProperty", new StringNode("AnotherValue")),
            });
            var sut         = new MarkupExtensionNodeToXamlNodesConverter(WiringContext);
            var actualNodes = sut.ParseMarkupExtensionNode(tree).ToList();

            var expectedInstructions = new List <XamlInstruction>
            {
                X.StartObject <DummyExtension>(),
                X.StartMember <DummyExtension>(d => d.Property),
                X.Value("Value"),
                X.EndMember(),
                X.StartMember <DummyExtension>(d => d.AnotherProperty),
                X.Value("AnotherValue"),
                X.EndMember(),
                X.EndObject(),
            };

            CollectionAssert.AreEqual(expectedInstructions, actualNodes);
        }
示例#7
0
 protected bool Equals(MarkupExtensionNode other)
 {
     return(Equals(Options, other.Options) && Equals(Identifier, other.Identifier));
 }
 protected bool Equals(MarkupExtensionNode other)
 {
     return Equals(Options, other.Options) && Equals(Identifier, other.Identifier);
 }