diff options
author | Facundo Batista <facundobatista@gmail.com> | 2008-02-23 22:54:12 (GMT) |
---|---|---|
committer | Facundo Batista <facundobatista@gmail.com> | 2008-02-23 22:54:12 (GMT) |
commit | c12b9888f70d4845af6dcdf7683e19e2f4c925fa (patch) | |
tree | 0b00e8e621638f4724cd7a0c2b56da7b9d7c17f2 /Lib | |
parent | 0bb8567e1e6cfe1e65ac5113945096bf2d369fa4 (diff) | |
download | cpython-c12b9888f70d4845af6dcdf7683e19e2f4c925fa.zip cpython-c12b9888f70d4845af6dcdf7683e19e2f4c925fa.tar.gz cpython-c12b9888f70d4845af6dcdf7683e19e2f4c925fa.tar.bz2 |
Added simple test case. Thanks Benjamin Peterson.
Diffstat (limited to 'Lib')
-rw-r--r-- | Lib/test/test_mutex.py | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/Lib/test/test_mutex.py b/Lib/test/test_mutex.py new file mode 100644 index 0000000..6318c70 --- /dev/null +++ b/Lib/test/test_mutex.py @@ -0,0 +1,33 @@ +import mutex + +import unittest +import test.test_support + +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 + # unlock both locks + self.mutex.unlock() + self.mutex.unlock() + self.failIf(self.mutex.test(), "mutex still held") + +def test_main(): + test.test_support.run_unittest(MutexTest) + +if __name__ == "__main__": + test_main() |