;
Ìâ"Ic            
   @   s™   d  d l  Z  d  d l Z d  d l Z d  d l Z d  d l Z d  d l m Z d „  Z d „  Z Gd „  d e j	 ƒ Z
 d „  Z e d k o e ƒ  n d S(	   i    N(   u   supportc             C   sˆ   t  j |  ƒ } xe | D]] } t  j j |  | ƒ } t  j j | ƒ o" t  j j | ƒ o t | ƒ q t  j | ƒ q Wt  j |  ƒ d  S(   N(	   u   osu   listdiru   pathu   joinu   isdiru   islinku   cleanoutu   removeu   rmdir(   u   rootu   namesu   nameu   fullname(    (    u*   /mit/python/lib/python3.0/test/test_pkg.pyu   cleanout   s     'c             C   s"   d |  k o |  j  d ƒ n |  S(   Nu   __builtins__(   u   remove(   u   lst(    (    u*   /mit/python/lib/python3.0/test/test_pkg.pyu   fixdir   s    c             B   sq   |  Ee  Z d  „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z	 d „  Z
 d	 „  Z d
 „  Z d S(   c             C   s:   d  |  _ d  |  _ t t j ƒ |  _ t j j ƒ  |  _	 d  S(   N(
   u   Noneu   rootu   pkgnameu   listu   sysu   pathu   syspathu   modulesu   copyu
   sysmodules(   u   self(    (    u*   /mit/python/lib/python3.0/test/test_pkg.pyu   setUp/   s    		c                s   ˆ  j  t j d  d  … <t j j ƒ  t j j ˆ  j ƒ ˆ  ` t ˆ  j ƒ ˆ  j	 o8 ‡  f d †  t j Dƒ } x | D] } t j | =qs Wn d  S(   Nc                s8   g  } |  ]* } ˆ  j  | j d  ƒ k o | | q
 q
 S(   u   .(   u   pkgnameu   split(   u   .0u   _[1]u   name(   u   self(    u*   /mit/python/lib/python3.0/test/test_pkg.pyu
   <listcomp>>   s    (
   u   syspathu   sysu   pathu   modulesu   clearu   updateu
   sysmodulesu   cleanoutu   rootu   pkgname(   u   selfu   modulesu   name(    (   u   selfu*   /mit/python/lib/python3.0/test/test_pkg.pyu   tearDown5   s    
 c             C   s'   t  t j | ƒ t ƒ  i |  d 6ƒ d  S(   Nu   self(   u   execu   textwrapu   dedentu   globals(   u   selfu   code(    (    u*   /mit/python/lib/python3.0/test/test_pkg.pyu   run_codeC   s    c       	      C   s  t  j ƒ  } t j j d | ƒ t j j | ƒ p t j | ƒ n x¹ | D]± \ } } | j ƒ  } | } x# | D] } t j j	 | | ƒ } qo W| d  k o t j | ƒ qJ t | d ƒ } | j | ƒ | o" | d d k o | j d ƒ n | j ƒ  qJ W| |  _ | d d |  _ d  S(   Ni    u   wiÿÿÿÿu   
(   u   tempfileu   mkdtempu   sysu   pathu   insertu   osu   isdiru   mkdiru   splitu   joinu   Noneu   openu   writeu   closeu   rootu   pkgname(	   u   selfu   descru   rootu   nameu   contentsu   compsu   fullnameu   cu   f(    (    u*   /mit/python/lib/python3.0/test/test_pkg.pyu   mkhierF   s(      	c             C   s)   d d g } |  j | ƒ d d  l } d  S(   Nu   t1u   t1 __init__.pyu    i    (   u   t1N(   u   t1 __init__.pyu    (   u   Noneu   mkhieru   t1(   u   selfu   hieru   t1(    (    u*   /mit/python/lib/python3.0/test/test_pkg.pyu   test_1\   s    c             C   sÆ  d d d d d d g } |  j | ƒ d
 d  l } |  j | j d ƒ d
 d  l } d
 d  l } |  j | j d ƒ |  j | j j d ƒ |  j | j j	 j d ƒ d } |  j
 | ƒ d
 d l m } d
 d l m	 } d
 d l m } |  j | j d ƒ |  j | j d ƒ |  j | j	 j d ƒ x5 d d d d g D]! } |  j t ƒ  d d | ƒ q0Wd
 d  l } d
 d  l } |  j | j d ƒ |  j | j j d ƒ |  j | j j	 j d ƒ d } |  j
 | ƒ d  S(   Nu   t2u   t2 __init__.pyu   'doc for t2'u   t2 subu   t2 sub __init__.pyu    u   t2 sub subsubu   t2 sub subsub __init__.pyu   spam = 1i    u
   doc for t2u   t2.subu   t2.sub.subsubu{   
            import t2
            from t2 import *
            self.assertEqual(dir(), ['self', 'sub', 't2'])
            (   u   sub(   u   subsub(   u   spamu   spamu   subu   subsubu   nameu   Failed to import %su^   
            from t2 import *
            self.failUnless(dir(), ['self', 'sub'])
            (   u   t2N(   u   t2 __init__.pyu   'doc for t2'(   u   t2 subN(   u   t2 sub __init__.pyu    (   u   t2 sub subsubN(   u   t2 sub subsub __init__.pyu   spam = 1(   u   Noneu   mkhieru   t2u   assertEqualu   __doc__u   t2.subu   t2.sub.subsubu   __name__u   subu   subsubu   run_codeu   spamu
   failUnlessu   locals(   u   selfu   hieru   t2u   su   subu   subsubu   spamu   name(    (    u*   /mit/python/lib/python3.0/test/test_pkg.pyu   test_2a   s@    	 c             C   sw   d d d d d d g } |  j | ƒ d	 d  l } |  j | j d ƒ |  j | j j d
 ƒ |  j | j j j d ƒ d  S(   Nu   t3u   t3 __init__.pyu    u   t3 subu   t3 sub __init__.pyu   t3 sub subsubu   t3 sub subsub __init__.pyu   spam = 1i    u   t3.subu   t3.sub.subsub(   u   t3N(   u   t3 __init__.pyu    (   u   t3 subN(   u   t3 sub __init__.pyu    (   u   t3 sub subsubN(   u   t3 sub subsub __init__.pyu   spam = 1(   u   Noneu   mkhieru   t3.sub.subsubu   assertEqualu   __name__u   subu   subsub(   u   selfu   hieru   t3(    (    u*   /mit/python/lib/python3.0/test/test_pkg.pyu   test_3“   s    	c          
   C   sE   d d d d d d d d d g	 } |  j | ƒ d } |  j | ƒ d  S(   Nu   t4.pyu)   raise RuntimeError('Shouldnt load t4.py')u   t4u   t4 __init__.pyu    u	   t4 sub.pyu*   raise RuntimeError('Shouldnt load sub.py')u   t4 subu   t4 sub __init__.pyu   t4 sub subsub.pyu-   raise RuntimeError('Shouldnt load subsub.py')u   t4 sub subsubu   t4 sub subsub __init__.pyu   spam = 1u[   
            from t4.sub.subsub import *
            self.assertEqual(spam, 1)
            (   u   t4.pyu)   raise RuntimeError('Shouldnt load t4.py')(   u   t4N(   u   t4 __init__.pyu    (   u	   t4 sub.pyu*   raise RuntimeError('Shouldnt load sub.py')(   u   t4 subN(   u   t4 sub __init__.pyu    (   u   t4 sub subsub.pyu-   raise RuntimeError('Shouldnt load subsub.py')(   u   t4 sub subsubN(   u   t4 sub subsub __init__.pyu   spam = 1(   u   Noneu   mkhieru   run_code(   u   selfu   hieru   s(    (    u*   /mit/python/lib/python3.0/test/test_pkg.pyu   test_4£   s     	c             C   sÞ   d d d d g } |  j | ƒ d d  l } d	 } |  j | ƒ d d  l } |  j t t | ƒ ƒ d
 d d d d d d d g ƒ |  j t t | j ƒ ƒ d
 d d d d g ƒ |  j t t | j ƒ ƒ d
 d d d d g ƒ d  S(   Nu   t5u   t5 __init__.pyu   import t5.foou   t5 string.pyu   spam = 1u	   t5 foo.pyu-   from . import string; assert string.spam == 1i    uo   
            from t5 import *
            self.assertEqual(dir(), ['foo', 'self', 'string', 't5'])
            u   __doc__u   __file__u   __name__u   __package__u   __path__u   foou   stringu   spam(   u   t5N(   u   t5 __init__.pyu   import t5.foo(   u   t5 string.pyu   spam = 1(   u	   t5 foo.pyu-   from . import string; assert string.spam == 1(	   u   Noneu   mkhieru   t5u   run_codeu   assertEqualu   fixdiru   diru   foou   string(   u   selfu   hieru   t5u   s(    (    u*   /mit/python/lib/python3.0/test/test_pkg.pyu   test_5¸   s&     		
c          	   C   ss   d d d d d g } |  j | ƒ d d  l } |  j t t | ƒ ƒ d	 d
 d d d d g ƒ d } |  j | ƒ d  S(   Nu   t6u   t6 __init__.pyu!   __all__ = ['spam', 'ham', 'eggs']u
   t6 spam.pyu    u	   t6 ham.pyu
   t6 eggs.pyi    u   __all__u   __doc__u   __file__u   __name__u   __package__u   __path__ut  
            import t6
            from t6 import *
            self.assertEqual(fixdir(dir(t6)),
                             ['__all__', '__doc__', '__file__',
                              '__name__', '__package__', '__path__',
                              'eggs', 'ham', 'spam'])
            self.assertEqual(dir(), ['eggs', 'ham', 'self', 'spam', 't6'])
            (   u   t6N(   u   t6 __init__.pyu!   __all__ = ['spam', 'ham', 'eggs'](   u
   t6 spam.pyu    (   u	   t6 ham.pyu    (   u
   t6 eggs.pyu    (   u   Noneu   mkhieru   t6u   assertEqualu   fixdiru   diru   run_code(   u   selfu   hieru   t6u   s(    (    u*   /mit/python/lib/python3.0/test/test_pkg.pyu   test_6Ô   s     			c       	      C   s†  d d d d d d d d  d! g	 } |  j | ƒ d" \ } } } d d  l } |  j t t | ƒ ƒ d d d d d g ƒ |  j | ƒ d d l m } |  j t t | ƒ ƒ d d d d d g ƒ |  j | ƒ |  j | ƒ d d l m	 } |  j t t | ƒ ƒ d d d d d d g ƒ |  j | ƒ |  j | ƒ |  j | ƒ d d l
 m } |  j | d ƒ |  j | ƒ |  j | ƒ |  j | ƒ d  S(#   Nu   t7.pyu    u   t7u   t7 __init__.pyu	   t7 sub.pyu*   raise RuntimeError('Shouldnt load sub.py')u   t7 subu   t7 sub __init__.pyu
   t7 sub .pyu-   raise RuntimeError('Shouldnt load subsub.py')u   t7 sub subsubu   t7 sub subsub __init__.pyu   spam = 1i    u   __doc__u   __file__u   __name__u   __package__u   __path__(   u   sub(   u   subsubu   spam(   u   spami   (   u   t7.pyu    (   u   t7N(   u   t7 __init__.pyu    (   u	   t7 sub.pyu*   raise RuntimeError('Shouldnt load sub.py')(   u   t7 subN(   u   t7 sub __init__.pyu    (   u
   t7 sub .pyu-   raise RuntimeError('Shouldnt load subsub.py')(   u   t7 sub subsubN(   u   t7 sub subsub __init__.pyu   spam = 1(   NNN(   u   Noneu   mkhieru   t7u   assertEqualu   fixdiru   diru   failIfu   subu   t7.subu   subsubu   t7.sub.subsubu   spam(	   u   selfu   hieru   t7u   subu   subsubu   tasu   subparu	   subsubsubu   ham(    (    u*   /mit/python/lib/python3.0/test/test_pkg.pyu   test_7î   sJ       				N(   u   __name__u
   __module__u   setUpu   tearDownu   run_codeu   mkhieru   test_1u   test_2u   test_3u   test_4u   test_5u   test_6u   test_7(   u
   __locals__(    (    u*   /mit/python/lib/python3.0/test/test_pkg.pyu   TestPkg-   s   
						2				u   TestPkgc               C   s   t  j t ƒ d  S(   N(   u   supportu   run_unittestu   __name__(    (    (    u*   /mit/python/lib/python3.0/test/test_pkg.pyu	   test_main  s    u   __main__(   u   sysu   osu   tempfileu   textwrapu   unittestu   testu   supportu   cleanoutu   fixdiru   TestCaseu   TestPkgu	   test_mainu   __name__(    (    (    u*   /mit/python/lib/python3.0/test/test_pkg.pyu   <module>   s   	
	í	