add some PropertyDescriptor tests for IsReadOnly
authorChris Toshok <toshok@novell.com>
Thu, 9 Nov 2006 05:02:42 +0000 (05:02 -0000)
committerChris Toshok <toshok@novell.com>
Thu, 9 Nov 2006 05:02:42 +0000 (05:02 -0000)
svn path=/trunk/mcs/; revision=67573

mcs/class/System/System_test.dll.sources
mcs/class/System/Test/System.ComponentModel/PropertyDescriptorTests.cs [new file with mode: 0644]

index ed163d0ebbcbe2095c88266e23c522467f15f2dd..d7955a7c88cf27d2853c8d484828b3eedfafdb7c 100644 (file)
@@ -118,6 +118,7 @@ System.ComponentModel/Int32ConverterTests.cs
 System.ComponentModel/Int64ConverterTests.cs
 System.ComponentModel/LicenseManagerTests.cs
 System.ComponentModel/PropertyDescriptorCollectionTests.cs
+System.ComponentModel/PropertyDescriptorTests.cs
 System.ComponentModel/SByteConverterTests.cs
 System.ComponentModel/SingleConverterTests.cs
 System.ComponentModel/ToolboxItemAttributeTests.cs
diff --git a/mcs/class/System/Test/System.ComponentModel/PropertyDescriptorTests.cs b/mcs/class/System/Test/System.ComponentModel/PropertyDescriptorTests.cs
new file mode 100644 (file)
index 0000000..67eb9b7
--- /dev/null
@@ -0,0 +1,67 @@
+//
+// System.ComponentModel.PropertyDescriptor test cases
+//
+// Authors:
+//     Chris Toshok (toshok@ximian.com)
+//
+// (c) 2006 Novell, Inc. (http://www.novell.com/)
+//
+
+using System;
+using System.Collections;
+using System.ComponentModel;
+using System.Globalization;
+
+using NUnit.Framework;
+
+namespace MonoTests.System.ComponentModel
+{
+       [TestFixture]
+       public class PropertyDescriptorTests
+       {
+               class ReadOnlyProperty_test
+               {
+                       public int Prop {
+                               get { return 5; }
+                       }
+               }
+
+               class ReadOnlyAttribute_test
+               {
+                       [ReadOnly (true)]
+                       public int Prop {
+                               get { return 5; }
+                               set { }
+                       }
+               }
+
+               class ConflictingReadOnly_test
+               {
+                       [ReadOnly (false)]
+                       public int Prop {
+                               get { return 5; }
+                       }
+               }
+
+               [Test]
+               public void ReadOnlyPropertyTest ()
+               {
+                       PropertyDescriptorCollection col = TypeDescriptor.GetProperties (typeof (ReadOnlyProperty_test));
+                       Assert.IsTrue (col["Prop"].IsReadOnly, "1");
+               }
+
+               [Test]
+               public void ReadOnlyAttributeTest ()
+               {
+                       PropertyDescriptorCollection col = TypeDescriptor.GetProperties (typeof (ReadOnlyAttribute_test));
+                       Assert.IsTrue (col["Prop"].IsReadOnly, "1");
+               }
+
+               [Test]
+               public void ReadOnlyConflictingTest ()
+               {
+                       PropertyDescriptorCollection col = TypeDescriptor.GetProperties (typeof (ConflictingReadOnly_test));
+                       Assert.IsTrue (col["Prop"].IsReadOnly, "1");
+               }
+       }
+}