Decorators for labeling test objects
Decorators that merely return a modified version of the original function object are straightforward. Decorators that return a new function object need to use nose.tools.make_decorator(original_function)(decorator) in returning the decorator, in order to preserve metadata such as function name, setup and teardown functions and so on - see nose.tools for more information.
Signals to nose that this function is or is not a test
Parameters: | tf : bool
This decorator cannot use the nose namespace, because it can be : called from a non-test module. See also istest and nottest in : nose.tools : |
---|
Make function raise SkipTest exception if skip_condition is true
Parameters: | skip_condition : bool or callable.
|
---|---|
Returns: | decorator : function
|
Notes
You will see from the code that we had to further decorate the decorator with the nose.tools.make_decorator function in order to transmit function name, and various other metadata.
Labels a test as ‘slow’.
The exact definition of a slow test is obviously both subjective and hardware-dependent, but in general any individual test that requires more than a second or two should be labeled as slow (the whole suite consits of thousands of tests, so even a second is significant).