Fixed Type.GetEnumNames sort order (it's specified on MSDN). Previously this method...
[mono.git] / mcs / class / corlib / Test / System / TypeTest.cs
index 2c1ebbe5441da8294416f49ecd67ef0ea4812639..3b1532527363463ae69b9910c07984c67ed087db 100644 (file)
@@ -3489,6 +3489,22 @@ PublicKeyToken=b77a5c561934e089"));
                        Assert.AreEqual ("C", res [2], "#7");
                }
 
+               public enum OutOfOrderEnum : sbyte
+               {
+                       D = -1, C = 2, B = 1, A = 0
+               }
+                               
+               [Test]
+               public void GetEnumNamesSortsByUnsignedValue ()
+               {
+                       string[] names = typeof (OutOfOrderEnum).GetEnumNames ();
+                       Assert.AreEqual (4, names.Length);
+                       Assert.AreEqual ("A", names [0]);
+                       Assert.AreEqual ("B", names [1]);
+                       Assert.AreEqual ("C", names [2]);
+                       Assert.AreEqual ("D", names [3]);
+               }
+               
                [Test]
                public void GetEnumValues () {
                        try {