5.3.3 Re-using old test code
Some users will find that they have existing test code that they would like to run from
PyUnit, without converting every old test function to a TestCase
subclass.
For this reason, PyUnit provides a FunctionTestCase class. This
subclass of TestCase can be used to wrap an existing test function.
Set-up and tear-down functions can also optionally be wrapped.
Given the following test function:
def testSomething():
something = makeSomething()
assert something.name is not None
# ...
one can create an equivalent test case instance as follows:
testcase = unittest.FunctionTestCase(testSomething)
If there are additional set-up and tear-down methods that should be called as part of the
test case's operation, they can also be provided:
testcase = unittest.FunctionTestCase(testSomething,
setUp=makeSomethingDB,
tearDown=deleteSomethingDB)
Note: PyUnit supports the use of AssertionError as an indicator of test failure, but does not recommend
it. Future versions may treat AssertionError differently.
|