File: //proc/self/root/opt/alt/python27/lib64/python2.7/site-packages/numpy/testing/decorators.pyo
�
�9Zc @` s� d Z d d l m Z m Z m Z d d l Z d d l Z d d l m Z d � Z e
d � Z d d � Z
d d � Z e
d
� Z d S( s�
Decorators for labeling and modifying behavior of 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 meta-data such as
function name, setup and teardown functions and so on - see
``nose.tools`` for more information.
i ( t divisiont absolute_importt print_functionNi ( t SkipTestc C` s
t | _ | S( s�
Label 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).
Parameters
----------
t : callable
The test to label as slow.
Returns
-------
t : callable
The decorated test `t`.
Examples
--------
The `numpy.testing` module includes ``import decorators as dec``.
A test can be decorated as slow like this::
from numpy.testing import *
@dec.slow
def test_big(self):
print('Big, slow test')
( t Truet slow( t t( ( sK /opt/alt/python27/lib64/python2.7/site-packages/numpy/testing/decorators.pyR s c ` s � f d � } | S( s�
Signals to nose that this function is or is not a test.
Parameters
----------
tf : bool
If True, specifies that the decorated callable is a test.
If False, specifies that the decorated callable is not a test.
Default is True.
Notes
-----
This decorator can't use the nose namespace, because it can be
called from a non-test module. See also ``istest`` and ``nottest`` in
``nose.tools``.
Examples
--------
`setastest` can be used in the following way::
from numpy.testing.decorators import setastest
@setastest(False)
def func_with_test_in_name(arg1, arg2):
pass
c ` s
� | _ | S( N( t __test__( R ( t tf( sK /opt/alt/python27/lib64/python2.7/site-packages/numpy/testing/decorators.pyt set_testV s ( ( R R ( ( R sK /opt/alt/python27/lib64/python2.7/site-packages/numpy/testing/decorators.pyt setastest: s c ` s � � f d � } | S( s�
Make function raise SkipTest exception if a given condition is true.
If the condition is a callable, it is used at runtime to dynamically
make the decision. This is useful for tests that may require costly
imports, to delay the cost until the test suite is actually executed.
Parameters
----------
skip_condition : bool or callable
Flag to determine whether to skip the decorated test.
msg : str, optional
Message to give on raising a SkipTest exception. Default is None.
Returns
-------
decorator : function
Decorator which, when applied to a function, causes SkipTest
to be raised when `skip_condition` is True, and the function
to be called normally otherwise.
Notes
-----
The decorator itself is decorated with the ``nose.tools.make_decorator``
function in order to transmit function name, and various other metadata.
c ` s� d d l } t � t j � r0 � f d � � n � f d � � d d � � � � � � f d � } � � � � f d � } | j j � � r� | } n | } | j j � � | � S( Ni c ` s � � S( N( ( ( t skip_condition( sK /opt/alt/python27/lib64/python2.7/site-packages/numpy/testing/decorators.pyt <lambda> s c ` s � S( N( ( ( R ( sK /opt/alt/python27/lib64/python2.7/site-packages/numpy/testing/decorators.pyR � s c S` s, | d k r d } n | } d | j | f S( s; Skip message with information about function being skipped.s"