Convert test_imp over to unittest.

This commit is contained in:
Brett Cannon 2006-10-03 23:23:14 +00:00
parent 5a9aa4f31c
commit 373d90b365
2 changed files with 35 additions and 29 deletions

View file

@ -1,31 +1,33 @@
import imp
from test.test_support import TestFailed, TestSkipped
try:
import thread
except ImportError:
raise TestSkipped("test only valid when thread support is available")
import thread
import unittest
from test import test_support
def verify_lock_state(expected):
if imp.lock_held() != expected:
raise TestFailed("expected imp.lock_held() to be %r" % expected)
def testLock():
class LockTests(unittest.TestCase):
"""Very basic test of import lock functions."""
def verify_lock_state(self, expected):
self.failUnlessEqual(imp.lock_held(), expected,
"expected imp.lock_held() to be %r" % expected)
def testLock(self):
LOOPS = 50
# The import lock may already be held, e.g. if the test suite is run
# via "import test.autotest".
lock_held_at_start = imp.lock_held()
verify_lock_state(lock_held_at_start)
self.verify_lock_state(lock_held_at_start)
for i in range(LOOPS):
imp.acquire_lock()
verify_lock_state(True)
self.verify_lock_state(True)
for i in range(LOOPS):
imp.release_lock()
# The original state should be restored now.
verify_lock_state(lock_held_at_start)
self.verify_lock_state(lock_held_at_start)
if not lock_held_at_start:
try:
@ -33,11 +35,13 @@ def testLock():
except RuntimeError:
pass
else:
raise TestFailed("release_lock() without lock should raise "
self.fail("release_lock() without lock should raise "
"RuntimeError")
def test_main():
testLock()
test_support.run_unittest(
LockTests,
)
if __name__ == "__main__":
test_main()

View file

@ -139,6 +139,8 @@ Extension Modules
Tests
-----
- Converted test_imp to use unittest.
- Fix bsddb test_basics.test06_Transactions to check the version
number properly.