예제 #1
0
        public void Arguments_GetArgumentByItemNameWhenTwoNamedArguments_ReturnsArgument()
        {
            CreateAttribute("[Test.MyAttribute(One = \"OneValue\", Two = false)]");

            global::EnvDTE.CodeElements args = codeAttribute.Arguments;

            var arg = args.Item("Two") as CodeAttributeArgument;

            Assert.AreEqual("false", arg.Value);
        }
예제 #2
0
        public void Arguments_GetArgumentByItemIndexWhenTwoPositionalArguments_ReturnsArgumentAtIndex()
        {
            CreateAttribute("[Test.MyAttribute(\"StringValue\", false)]");

            global::EnvDTE.CodeElements args = codeAttribute.Arguments;

            CodeAttributeArgument arg = args.Item(2) as CodeAttributeArgument;

            Assert.AreEqual("false", arg.Value);
        }
        public void Attributes_ClassHasOneAttribute_ReturnsOneAttribute()
        {
            CreateCodeType("[TestAttribute] public class TestClass {}");

            global::EnvDTE.CodeElements attributes = codeType.Attributes;

            CodeAttribute2 attribute = attributes.Item(1) as CodeAttribute2;

            Assert.AreEqual(1, attributes.Count);
            Assert.AreEqual("Test", attribute.Name);
        }
        public void Arguments_GetArgumentByItemIndexWhenTwoPositionalArguments_ReturnsArgumentAtIndex()
        {
            CreateMSBuildAttribute("Test.MyAttribute");
            helper.AddPositionalArguments("StringValue", false);
            CreateAttribute();

            global::EnvDTE.CodeElements args = codeAttribute.Arguments;

            CodeAttributeArgument arg = args.Item(2) as CodeAttributeArgument;

            Assert.AreEqual("False", arg.Value);
        }
        public void Arguments_GetArgumentByItemNameWhenTwoNamedArguments_ReturnsArgument()
        {
            CreateMSBuildAttribute("Test.MyAttribute");
            helper.AddNamedArgument("One", "OneValue");
            helper.AddNamedArgument("Two", false);
            CreateAttribute();

            global::EnvDTE.CodeElements args = codeAttribute.Arguments;

            CodeAttributeArgument arg = args.Item("Two") as CodeAttributeArgument;

            Assert.AreEqual("False", arg.Value);
        }
        public void Attributes_PropertyHasOneAttribute_ReturnsOneAttribute()
        {
            helper.CreateProperty("MyProperty");
            helper.AddAttribute("Tests.TestAttribute", "TestAttribute");
            CreateCodeProperty2();

            global::EnvDTE.CodeElements attributes = property.Attributes;

            CodeAttribute2 attribute = attributes.Item(1) as CodeAttribute2;

            Assert.AreEqual(1, attributes.Count);
            Assert.AreEqual("Tests.TestAttribute", attribute.FullName);
        }
예제 #7
0
        public void Attributes_ClassHasOneAttribute_ReturnsOneAttribute()
        {
            CreateProjectContent();
            CreateClass("TestClass");
            AddAttributeToClass("TestAttribute");
            CreateCodeType();

            global::EnvDTE.CodeElements attributes = codeType.Attributes;

            CodeAttribute2 attribute = attributes.Item(1) as CodeAttribute2;

            Assert.AreEqual(1, attributes.Count);
            Assert.AreEqual("Test", attribute.Name);
        }
        public void Attributes_PropertyHasOneAttribute_ReturnsOneAttribute()
        {
            CreateCodeProperty2(
                "class MyClass {\r\n" +
                "    [System.Obsolete]\r\n" +
                "    public int MyProperty { get; set; }\r\n" +
                "}");

            global::EnvDTE.CodeElements attributes = property.Attributes;

            CodeAttribute2 attribute = attributes.Item(1) as CodeAttribute2;

            Assert.AreEqual(1, attributes.Count);
            Assert.AreEqual("System.ObsoleteAttribute", attribute.FullName);
        }