def setup_module(module): |
module.TestStateFullThing.classcount = 0 |
|
class TestStateFullThing: |
def setup_class(cls): |
cls.classcount += 1 |
|
def teardown_class(cls): |
cls.classcount -= 1 |
|
def setup_method(self, method): |
self.id = eval(method.func_name[5:]) |
|
def test_42(self): |
assert self.classcount == 1 |
assert self.id == 42 |
|
def test_23(self): |
assert self.classcount == 1 |
assert self.id == 23 |
|
def teardown_module(module): |
assert module.TestStateFullThing.classcount == 0 |
|
""" For this example the control flow happens as follows:: |
import test_setup_flow_example |
setup_module(test_setup_flow_example) |
setup_class(TestStateFullThing) |
instance = TestStateFullThing() |
setup_method(instance, instance.test_42) |
instance.test_42() |
setup_method(instance, instance.test_23) |
instance.test_23() |
teardown_class(TestStateFullThing) |
teardown_module(test_setup_flow_example) |
|
Note that ``setup_class(TestStateFullThing)`` is called and not |
``TestStateFullThing.setup_class()`` which would require you |
to insert ``setup_class = classmethod(setup_class)`` to make |
your setup function callable. |
""" |
|
|