Ñò
VîþIc           @   sp   d  d k  Z  d  d k l Z l Z d e f d „  ƒ  YZ d „  Z d e f d „  ƒ  YZ d „  Z	 e
 d	 „ Z d S(
   iÿÿÿÿN(   t
   setuputilst   taskst
   FakeModulec           B   s   e  Z d  „  Z RS(   c         K   s1   x* | i  ƒ  D] \ } } t |  | | ƒ q Wd  S(   N(   t   itemst   setattr(   t   selft   kwt   namet   value(    (    s0   /Users/admin/projects/paver/paver/tests/utils.pyt   __init__   s     (   t   __name__t
   __module__R	   (    (    (    s0   /Users/admin/projects/paver/paver/tests/utils.pyR      s   c         C   s   |  i  i | ƒ d  S(   N(   t   patch_capturedt   append(   R   t   output(    (    s0   /Users/admin/projects/paver/paver/tests/utils.pyt   patched_print
   s    t   FakeExitExceptionc           B   s   e  Z d  Z RS(   s=    Fake out tasks.Environment._exit to avoid interupting tests (   R
   R   t   __doc__(    (    (    s0   /Users/admin/projects/paver/paver/tests/utils.pyR      s   c         C   s   d |  _  t | ƒ ‚ d  S(   Ni   (   t	   exit_codeR   (   R   t   code(    (    s0   /Users/admin/projects/paver/paver/tests/utils.pyt   patched_exit   s    	c         K   sr   t  |   } t i | ƒ } | t _ t i t | t i ƒ | _ |  o( t i t | t i ƒ | _	 g  | _
 n | S(   N(   R   R   t   Environmentt   environmentt   newt   instancemethodR   t   _exitR   t   _printR   (   t   patch_printR   t   pavementt   env(    (    s0   /Users/admin/projects/paver/paver/tests/utils.pyt   _set_environment   s    	(   R   t   paverR    R   t   objectR   R   t	   ExceptionR   R   t   FalseR   (    (    (    s0   /Users/admin/projects/paver/paver/tests/utils.pyt   <module>   s   		