diff options
Diffstat (limited to 'Lib/test')
-rw-r--r-- | Lib/test/_test_multiprocessing.py | 17 | ||||
-rw-r--r-- | Lib/test/lock_tests.py | 12 |
2 files changed, 26 insertions, 3 deletions
diff --git a/Lib/test/_test_multiprocessing.py b/Lib/test/_test_multiprocessing.py index dcce576..1cd5704 100644 --- a/Lib/test/_test_multiprocessing.py +++ b/Lib/test/_test_multiprocessing.py @@ -1486,8 +1486,10 @@ class _TestLock(BaseTestCase): def test_lock(self): lock = self.Lock() self.assertEqual(lock.acquire(), True) + self.assertTrue(lock.locked()) self.assertEqual(lock.acquire(False), False) self.assertEqual(lock.release(), None) + self.assertFalse(lock.locked()) self.assertRaises((ValueError, threading.ThreadError), lock.release) @staticmethod @@ -1549,16 +1551,23 @@ class _TestLock(BaseTestCase): def test_rlock(self): lock = self.RLock() self.assertEqual(lock.acquire(), True) + self.assertTrue(lock.locked()) self.assertEqual(lock.acquire(), True) self.assertEqual(lock.acquire(), True) self.assertEqual(lock.release(), None) + self.assertTrue(lock.locked()) self.assertEqual(lock.release(), None) self.assertEqual(lock.release(), None) + self.assertFalse(lock.locked()) self.assertRaises((AssertionError, RuntimeError), lock.release) def test_lock_context(self): - with self.Lock(): - pass + with self.Lock() as locked: + self.assertTrue(locked) + + def test_rlock_context(self): + with self.RLock() as locked: + self.assertTrue(locked) class _TestSemaphore(BaseTestCase): @@ -6254,6 +6263,7 @@ class TestSyncManagerTypes(unittest.TestCase): @classmethod def _test_lock(cls, obj): obj.acquire() + obj.locked() def test_lock(self, lname="Lock"): o = getattr(self.manager, lname)() @@ -6265,8 +6275,9 @@ class TestSyncManagerTypes(unittest.TestCase): def _test_rlock(cls, obj): obj.acquire() obj.release() + obj.locked() - def test_rlock(self, lname="Lock"): + def test_rlock(self, lname="RLock"): o = getattr(self.manager, lname)() self.run_worker(self._test_rlock, o) diff --git a/Lib/test/lock_tests.py b/Lib/test/lock_tests.py index 8c8f890..009e04e 100644 --- a/Lib/test/lock_tests.py +++ b/Lib/test/lock_tests.py @@ -353,6 +353,18 @@ class RLockTests(BaseLockTests): lock.release() self.assertRaises(RuntimeError, lock.release) + def test_locked(self): + lock = self.locktype() + self.assertFalse(lock.locked()) + lock.acquire() + self.assertTrue(lock.locked()) + lock.acquire() + self.assertTrue(lock.locked()) + lock.release() + self.assertTrue(lock.locked()) + lock.release() + self.assertFalse(lock.locked()) + def test_release_save_unacquired(self): # Cannot _release_save an unacquired lock lock = self.locktype() |