ó
ù`]c           @@  sf   d  d l  m Z d  d l m Z d  d l m Z d  d l m Z d  d l m	 Z	 d „  Z
 d „  Z d S(	   i    (   t   absolute_import(   t   TestCase(   t   wraps(   t   SkipTest(   t   py26c         @  s   ‡  f d †  } | S(   s&   
    Unconditionally skip a test.
    c         @  sÈ   t  |  t ƒ o t |  t ƒ } | r| t ƒ  r| xL d „  t |  ƒ Dƒ D]1 } t ˆ  ƒ t |  | ƒ ƒ } t |  | | ƒ qD Wn  | s² t	 |  ƒ ‡  f d †  ƒ } |  j
 | _
 | }  n  t |  _ ˆ  |  _ |  S(   Nc         s@  s$   |  ] } | j  d  ƒ r | Vq d S(   t   test_N(   t
   startswith(   t   .0t   m(    (    s3   lib/python2.7/site-packages/nltk/test/unit/utils.pys	   <genexpr>   s    c          @  s   t  ˆ  ƒ ‚ d  S(   N(   R   (   t   argst   kwargs(   t   reason(    s3   lib/python2.7/site-packages/nltk/test/unit/utils.pyt   skip_wrapper   s    (   t
   isinstancet   typet
   issubclassR   R   t   dirt   skipt   getattrt   setattrR   t   __name__t   Truet   __unittest_skip__t   __unittest_skip_why__(   t	   test_itemt   is_test_classt	   meth_namet   patched_methodR   (   R   (    s3   lib/python2.7/site-packages/nltk/test/unit/utils.pyt	   decorator   s    			(    (   R   R   (    (   R   s3   lib/python2.7/site-packages/nltk/test/unit/utils.pyR   	   s    c         C@  s   |  r t  | ƒ Sd „  S(   s/   
    Skip a test if the condition is true.
    c         S@  s   |  S(   N(    (   t   obj(    (    s3   lib/python2.7/site-packages/nltk/test/unit/utils.pyt   <lambda>/   t    (   R   (   t	   conditionR   (    (    s3   lib/python2.7/site-packages/nltk/test/unit/utils.pyt   skipIf)   s    
N(   t
   __future__R    t   unittestR   t	   functoolsR   t   nose.plugins.skipR   t	   nltk.utilR   R   R!   (    (    (    s3   lib/python2.7/site-packages/nltk/test/unit/utils.pyt   <module>   s   	 