diff options
author | Berker Peksag <berker.peksag@gmail.com> | 2016-04-29 14:25:29 (GMT) |
---|---|---|
committer | Berker Peksag <berker.peksag@gmail.com> | 2016-04-29 14:25:29 (GMT) |
commit | 6d34bbbfc7ac1a5a8d518ed1b767239de26650c5 (patch) | |
tree | 5b621cc638f780829fe11bfdbbbfd55d87ce882d | |
parent | 5d6fd8c9365980f106748e9d716e458ac352f32f (diff) | |
download | cpython-6d34bbbfc7ac1a5a8d518ed1b767239de26650c5.zip cpython-6d34bbbfc7ac1a5a8d518ed1b767239de26650c5.tar.gz cpython-6d34bbbfc7ac1a5a8d518ed1b767239de26650c5.tar.bz2 |
Issue #25551: Test condition behavior instead of its internals
test_reset_internal_locks was looking at Event's _cond._lock. This
makes it harder to change internals of the Condition object and
makes the test fragile.
The test was added by Nir Soffer in 6108d30dde21.
Patch by Nir Soffer.
-rw-r--r-- | Lib/test/lock_tests.py | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/Lib/test/lock_tests.py b/Lib/test/lock_tests.py index afd6873..a64aa18 100644 --- a/Lib/test/lock_tests.py +++ b/Lib/test/lock_tests.py @@ -395,12 +395,13 @@ class EventTests(BaseTestCase): self.assertEqual(results, [True] * N) def test_reset_internal_locks(self): + # ensure that condition is still using a Lock after reset evt = self.eventtype() - old_lock = evt._cond._lock + with evt._cond: + self.assertFalse(evt._cond.acquire(False)) evt._reset_internal_locks() - new_lock = evt._cond._lock - self.assertIsNot(new_lock, old_lock) - self.assertIs(type(new_lock), type(old_lock)) + with evt._cond: + self.assertFalse(evt._cond.acquire(False)) class ConditionTests(BaseTestCase): |