* ThreadTest.cs: Added GetHashCode test for bug #325566.
authorGert Driesen <drieseng@users.sourceforge.net>
Tue, 18 Sep 2007 12:28:18 +0000 (12:28 -0000)
committerGert Driesen <drieseng@users.sourceforge.net>
Tue, 18 Sep 2007 12:28:18 +0000 (12:28 -0000)
svn path=/trunk/mcs/; revision=85965

mcs/class/corlib/Test/System.Threading/ChangeLog
mcs/class/corlib/Test/System.Threading/ThreadTest.cs

index efb3c3d0f453a865269c172562e7bbe946b1c8ee..303da26a38138ffb345798c66f2fdd5944e7a3cf 100644 (file)
@@ -1,3 +1,7 @@
+2007-09-18  Gert Driesen  <drieseng@users.sourceforge.net>
+
+       * ThreadTest.cs: Added GetHashCode test for bug #325566.
+
 2007-09-05  Gert Driesen  <drieseng@users.sourceforge.net>
 
        * ThreadTest.cs: Added test for bug #82700. Re-enabled and fixed some
index 9bcf96b6c61abd398e0b57a9c1c4857e861a48ee..a6328477aabe62e03191552c2db1788b4ee8ebdb 100644 (file)
@@ -212,6 +212,39 @@ namespace MonoTests.System.Threading
                        Thread TestThread = new Thread(new ThreadStart(test1.TestMethod));
                }
 
+               [Test] // bug #325566
+               [Category ("NotWorking")]
+               public void GetHashCodeTest ()
+               {
+                       C1Test test1 = new C1Test ();
+                       Thread tA = new Thread (new ThreadStart (test1.TestMethod));
+                       int hA1 = tA.GetHashCode ();
+                       Assert.IsTrue (hA1 > 0, "#A1");
+                       tA.Start ();
+                       int hA2 = tA.GetHashCode ();
+                       Assert.AreEqual (hA1, hA2, "#A2");
+                       tA.Join ();
+                       int hA3 = tA.GetHashCode ();
+                       Assert.AreEqual (hA1, hA3, "#A3");
+#if NET_2_0
+                       Assert.AreEqual (hA1, tA.ManagedThreadId, "#A4");
+#endif
+
+                       test1 = new C1Test ();
+                       Thread tB = new Thread (new ThreadStart (test1.TestMethod));
+                       int hB1 = tB.GetHashCode ();
+                       Assert.IsTrue (hB1 > 0, "#B1");
+                       tB.Start ();
+                       int hB2 = tB.GetHashCode ();
+                       Assert.AreEqual (hB1, hB2, "#B2");
+                       tB.Join ();
+                       int hB3 = tB.GetHashCode ();
+                       Assert.AreEqual (hB1, hB3, "#B3");
+#if NET_2_0
+                       Assert.AreEqual (hB1, tB.ManagedThreadId, "#B4");
+#endif
+               }
+
 #if NET_2_0
                [Test] // bug #82700
                [Category ("NotWorking")]