public void Constructor3 ()
		{
			Attribute[] attributes = new Attribute [2];
			attributes[0] = new ObsoleteAttribute ();
			attributes[1] = new ObsoleteAttribute ();
			PropertyMetadata pm = new PropertyMetadata (attributes);
			Assert.AreEqual (2, pm.GetAttributes().Length, "C3#1");
		}
		public void Constructor4 ()
		{
			Attribute[] attributes = new Attribute [2];
			attributes[0] = new ObsoleteAttribute ();
			attributes[1] = new ObsoleteAttribute ();
			PropertyMetadata pm = new PropertyMetadata (val, attributes);
			Assert.AreEqual (2, pm.GetAttributes().Length, "C4#1");
			Assert.AreEqual (val, pm.DefaultValue, "C4#2");
		}
示例#3
0
        public static bool IsMarkedObsolete([NotNull] this Type type, out ObsoleteAttribute obsoleteAttribute)
        {
            if (type == null)
            {
                throw Exceptions.ArgumentNull(nameof(type));
            }
            obsoleteAttribute = type.GetCustomAttribute <ObsoleteAttribute>();
            var result = obsoleteAttribute != null;

            return(result);
        }
 public void FindTypesByAttributeInstance()
 {
     var assemblyName = "test1.dll";
     GenerateAssembly(@"namespace ClassLibrary
     {
     [System.Obsolete]
     public class ClassWithAttribute
     {
     public int GetNumber()
     {
     return 42;
     }
     }
     }", assemblyName);
     Assert.IsTrue(File.Exists(assemblyName));
     var types = new ObsoleteAttribute().FindAttributedTypes(".", assemblyName);
     Assert.AreEqual(1, types.Count());
 }
示例#5
0
		/// <summary>
		/// Common method for Obsolete error/warning reporting.
		/// </summary>
		public static void Report_ObsoleteMessage (ObsoleteAttribute oa, string member, Location loc)
		{
			if (oa.IsError) {
				Report.Error (619, loc, "`{0}' is obsolete: `{1}'", member, oa.Message);
				return;
			}

			if (oa.Message == null || oa.Message.Length == 0) {
				Report.Warning (612, 1, loc, "`{0}' is obsolete", member);
				return;
			}
			Report.Warning (618, 2, loc, "`{0}' is obsolete: `{1}'", member, oa.Message);
		}
示例#6
0
		private void Check (ObsoleteAttribute attr, string message, bool error)
		{
			Assert.AreEqual (message, attr.Message, "Message");
			Assert.AreEqual (error, attr.IsError, "IsError");
			Assert.AreEqual (typeof (ObsoleteAttribute), attr.TypeId, "TypeId");
		}
 public void FindTypesByAttributeInAssemblies()
 {
     var assemblies = AppDomain.CurrentDomain.GetAssemblies();
     var types = new ObsoleteAttribute().FindAttributedTypes(assemblies);
     Assert.IsTrue(types.Any());
 }
 public void FindTypesByAttributeInAppDomain()
 {
     var types = new ObsoleteAttribute().FindAttributedTypes();
     Assert.IsTrue(types.Any());
 }
		public void Constructor7 ()
		{
			Attribute[] attributes = new Attribute [2];
			attributes[0] = new ObsoleteAttribute ();
			attributes[1] = new ObsoleteAttribute ();
			PropertyMetadata pm = new PropertyMetadata (val, DependencyPropertyOptions.Readonly, attributes);
			Assert.AreEqual (DependencyPropertyOptions.Readonly, pm.Options, "C7#1");
			Assert.AreEqual (2, pm.GetAttributes().Length, "C7#2");
			Assert.AreEqual (val, pm.DefaultValue, "C7#3");
		}
示例#10
0
		public void Attributes ()
		{
			Attribute[] attributes = new Attribute [3];
			Attribute[] attributes2;

			attributes[0] = new ObsoleteAttribute ();
			attributes[1] = new ObsoleteAttribute ();
			attributes[2] = new NonSerializedAttribute ();
			PropertyMetadata pm = new PropertyMetadata (attributes);
			attributes2 = pm.GetAttributes ();
			Assert.AreEqual (3, attributes2.Length, "C9#1");
			Assert.AreEqual (attributes[0], attributes2[0], "C9#2");
			Assert.AreEqual (attributes[1], attributes2[1], "C9#3");
			Assert.AreEqual (attributes[2], attributes2[2], "C9#4");

			attributes2 = pm.GetAttributes (typeof (NonSerializedAttribute));
			Assert.AreEqual (1, attributes2.Length, "C9#5");
			Assert.AreEqual (attributes[2], attributes2[0], "C9#6");

			attributes2 = pm.GetAttributes (typeof (ObsoleteAttribute));
			Assert.AreEqual (2, attributes2.Length, "C9#7");
			Assert.AreEqual (attributes[0], attributes2[0], "C9#8");
			Assert.AreEqual (attributes[1], attributes2[1], "C9#9");

			attributes2 = pm.GetAttributes (typeof (ParamArrayAttribute));
			Assert.AreEqual (0, attributes2.Length, "C9#10");
		}
示例#11
0
 private void ConstructCmdletMetadataUsingReflection()
 {
     if (this.CommandType.GetInterface(typeof(IDynamicParameters).Name, true) != null)
     {
         this._implementsDynamicParameters = true;
     }
     foreach (Attribute attribute in this.CommandType.GetCustomAttributes(false))
     {
         CmdletAttribute attribute2 = attribute as CmdletAttribute;
         if (attribute2 != null)
         {
             this.ProcessCmdletAttribute(attribute2);
             this.Name = attribute2.VerbName + "-" + attribute2.NounName;
         }
         else if (attribute is ObsoleteAttribute)
         {
             this._obsolete = (ObsoleteAttribute) attribute;
         }
         else
         {
             this._otherAttributes.Add(attribute);
         }
     }
 }