ó
­«Y]c           @   sy   d  d l  Z  d  d l m Z d  d l Z e j d d e ƒZ d e  j f d „  ƒ  YZ d „  Z	 e
 d k ru e	 ƒ  n  d S(	   iÿÿÿÿN(   t   test_supportt   newt
   deprecatedt   NewTestc           B   s>   e  Z d  „  Z d „  Z d „  Z e e d ƒ r< d „  Z n  RS(   c   
      C   sÏ  d d d „  ƒ  Y} t  j d ƒ } | | _ | t j d <d d  l } d „  } t  j d | j f i | d 6ƒ } t  j | i d d 6ƒ } t  j | ƒ } |  j | j	 i  d	 ƒ ~ t  j | d  ƒ } |  j | j	 i  d	 ƒ ~ d
 „  } t  j | | | ƒ }	 |  j | j ƒ  d d ƒ |  j | j ƒ  d d ƒ |	 ƒ  |  j | j ƒ  d d ƒ |  j | j ƒ  d d ƒ t  j | | ƒ }	 |	 ƒ  |  j | j ƒ  d ƒ |  j t t  j | d  ƒ |  j t t  j | | d d ƒd  S(   Nt   Eggsc           B   s   e  Z d  „  Z RS(   c         S   s   |  j  S(   N(   t   yolks(   t   self(    (    s   lib/python2.7/test/test_new.pyt	   get_yolks	   s    (   t   __name__t
   __module__R   (    (    (    s   lib/python2.7/test/test_new.pyR      s   t   Spamiÿÿÿÿc         S   s   |  j  d S(   Ni   (   R   (   R   (    (    s   lib/python2.7/test/test_new.pyt   get_more_yolks   s    R   i   R   s   new __dict__ should be emptyc         S   s   |  j  d |  _  d  S(   Ni   (   R   (   R   (    (    s   lib/python2.7/test/test_new.pyt   break_yolks!   s    s*   Broken call of hand-crafted class instancei   i   s+   Broken call of hand-crafted instance methodi   t   kw(    (   R   t   moduleR   t   syst   modulesR
   t   classobjt   instancet   assertEqualt   __dict__t   Nonet   instancemethodR   R   t   assertRaisest	   TypeError(
   R   R   t   mR
   R   t   Ct   ct   oR   t   im(    (    s   lib/python2.7/test/test_new.pyt	   test_spam   s<    		"	c         C   s‹   d } d j  d „  | j ƒ  Dƒ ƒ } t | d d ƒ } d d  l } i d d 6| d	 6} t j | | ƒ } | ƒ  |  j | d d
 d ƒ d  S(   NsH   
        global c
        a = 1
        b = 2
        c = a + b
        s   
c         s   s   |  ] } | j  ƒ  Vq d  S(   N(   t   strip(   t   .0t   l(    (    s   lib/python2.7/test/test_new.pys	   <genexpr>H   s    s   <string>t   execiÿÿÿÿi    R   t   __builtins__i   s)   Could not create a proper function object(   t   joint
   splitlinest   compilet   __builtin__R   t   functionR   (   R   t   codestrt   ccodeR'   t   gt   func(    (    s   lib/python2.7/test/test_new.pyt
   test_scope<   s    
c            sì   d „  } | d ƒ } t  j | j i  d ƒ t  j | j i  d d
 | j ƒ } ˆ  j | ƒ  d ƒ t  j | j i  d d  | j ƒ } ˆ  j | d ƒ d ƒ ‡  f d †  } | | d  t ƒ | | d t ƒ | | d t ƒ | | | j t ƒ d  S(   Nc            s   ‡  f d †  } | S(   Nc            s   ˆ  |  S(   N(    (   t   y(   t   x(    s   lib/python2.7/test/test_new.pyR+   W   s    (    (   R/   R+   (    (   R/   s   lib/python2.7/test/test_new.pyt   fV   s    i   t   blahi   i   i   i	   c            s)   ˆ  j  | t j |  j i  d d  | ƒ d  S(   Nt    (   R   R   R(   t	   func_codeR   (   R,   t   closuret   exc(   R   (    s   lib/python2.7/test/test_new.pyt   test_closure`   s    i   (   i   (   i   (   i   i   (   R   R(   R3   t   func_closureR   R   R   t
   ValueError(   R   R0   R+   t   g2t   g3R6   (    (   R   s   lib/python2.7/test/test_new.pyt   test_functionT   s    	!!t   codec         C   s  d „  } | j  } | j } | j } | j } | j } | j } | j } | j }	 | j }
 | j	 } | j
 } | j } | j } | j } | j } t j | | | | | | |	 |
 | | | | | | ƒ } t j | | | | | | |	 |
 | | | | ƒ } |  j t t j | | | | | | |	 |
 | | | | ƒ |  j t t j | | | | | | |	 |
 | | | | ƒ |  j t t j | | | | | | d |
 | | | | ƒ d t f d „  ƒ  Y} | d ƒ f } t j | | | | | | | |
 | | | | ƒ } |  j t | d ƒ | k d ƒ d  S(	   Nc         S   s   d  S(   N(    (   t   a(    (    s   lib/python2.7/test/test_new.pyR0   l   R2   i   t   Sc           B   s   e  Z RS(    (   R   R	   (    (    (    s   lib/python2.7/test/test_new.pyR>   —   s   t   abi    s   eek, tuple changed under us!(   i   (   R3   t   co_argcountt
   co_nlocalst   co_stacksizet   co_flagst   co_codet	   co_constst   co_namest   co_varnamest   co_filenamet   co_namet   co_firstlinenot	   co_lnotabt   co_freevarst   co_cellvarsR   R<   R   R8   R   t   strt
   assertTruet   type(   R   R0   R   t   argcountt   nlocalst	   stacksizet   flagst
   codestringt	   constantst   namest   varnamest   filenamet   namet   firstlinenot   lnotabt   freevarst   cellvarst   dR>   t   t(    (    s   lib/python2.7/test/test_new.pyt	   test_codej   sJ    																(   R   R	   R   R-   R;   t   hasattrR   Ra   (    (    (    s   lib/python2.7/test/test_new.pyR      s
   	5		c           C   s   t  j t ƒ d  S(   N(   R    t   run_unittestR   (    (    (    s   lib/python2.7/test/test_new.pyt	   test_mainŸ   s    t   __main__(   t   unittestt   testR    R   t   import_modulet   TrueR   t   TestCaseR   Rd   R   (    (    (    s   lib/python2.7/test/test_new.pyt   <module>   s   ™	