[Python-checkins] r63910 - python/trunk/Lib/test/test_mutex.py

benjamin.peterson python-checkins at python.org
Tue Jun 3 03:30:37 CEST 2008


Author: benjamin.peterson
Date: Tue Jun  3 03:30:37 2008
New Revision: 63910

Log:
make test_mutex more elegant


Modified:
   python/trunk/Lib/test/test_mutex.py

Modified: python/trunk/Lib/test/test_mutex.py
==============================================================================
--- python/trunk/Lib/test/test_mutex.py	(original)
+++ python/trunk/Lib/test/test_mutex.py	Tue Jun  3 03:30:37 2008
@@ -5,26 +5,28 @@
 
 class MutexTest(unittest.TestCase):
 
-    def setUp(self):
-        self.mutex = mutex.mutex()
-
-    def called_by_mutex(self, some_data):
-        self.assert_(self.mutex.test(), "mutex not held")
-        # Nested locking
-        self.mutex.lock(self.called_by_mutex2, "eggs")
-
-    def called_by_mutex2(self, some_data):
-        self.assert_(self.ready_for_2,
-                     "called_by_mutex2 called too soon")
-
     def test_lock_and_unlock(self):
-        self.read_for_2 = False
-        self.mutex.lock(self.called_by_mutex, "spam")
-        self.ready_for_2 = True
+
+        def called_by_mutex(some_data):
+            self.assertEqual(some_data, "spam")
+            self.assert_(m.test(), "mutex not held")
+            # Nested locking
+            m.lock(called_by_mutex2, "eggs")
+
+        def called_by_mutex2(some_data):
+            self.assertEquals(some_data, "eggs")
+            self.assert_(m.test(), "mutex not held")
+            self.assert_(ready_for_2,
+                         "called_by_mutex2 called too soon")
+
+        m = mutex.mutex()
+        read_for_2 = False
+        m.lock(called_by_mutex, "spam")
+        ready_for_2 = True
         # unlock both locks
-        self.mutex.unlock()
-        self.mutex.unlock()
-        self.failIf(self.mutex.test(), "mutex still held")
+        m.unlock()
+        m.unlock()
+        self.failIf(m.test(), "mutex still held")
 
 def test_main():
     test.test_support.run_unittest(MutexTest)


More information about the Python-checkins mailing list