mò
­fIc           @   sî  d  k  Z  d  k Z d  k Z d  k Z d  k Z d  k Z d  k Z d k l Z e i	 d d e
 d d d e ƒe e d ƒ o d  k Z d Z n d	 Z e  i e  i j Z e e d
 ƒ Z e i d j o
 d Z n! e i d- j o
 d Z n d Z d e i f d „  ƒ  YZ g  Z d e f d „  ƒ  YZ e i e ƒ d e f d „  ƒ  YZ e i e ƒ d e f d „  ƒ  YZ e i e ƒ d e f d „  ƒ  YZ e i e ƒ d e f d „  ƒ  YZ e i e ƒ d e f d „  ƒ  YZ e i e ƒ d e f d  „  ƒ  YZ e i e ƒ d! e f d" „  ƒ  YZ  e i e  ƒ d# e f d$ „  ƒ  YZ! e i e! ƒ d% e f d& „  ƒ  YZ" e i e" ƒ d' e f d( „  ƒ  YZ# e i e# ƒ d) e f d* „  ƒ  YZ$ e  i% e  i& j	 o e i e$ ƒ n d+ „  Z' e d, j o e' ƒ  n d  S(.   N(   s   test_supportt   ignoret   categoryt   messaget   mktempt   modulet   stati   i    t   spawnlt   maci    t   openbsd3t   openbsd4i0   id   t   TCc           B   s,   t  Z e i d ƒ Z d  d „ Z d „  Z RS(   Ns   [a-zA-Z0-9_-]{6}$c         C   sC   | d  j o t i ƒ  } n |  i d | | d | d f ƒ d  S(   Ns   %s raised %s: %si    i   (   t   eit   Nonet   syst   exc_infot   selft   failt   what(   R   R   R   (    (    t/   /mit/python/lib/python2.4/test/test_tempfile.pyt   failOnException,   s    c   	      C   sø   t  i i | ƒ \ } } | t | ƒ  } | t | ƒ t | ƒ } |  i t  i i | ƒ t  i i | ƒ d | | f ƒ |  i | | d | | f ƒ |  i | | d | | f ƒ | t | ƒ t | ƒ t | ƒ !} |  i |  i i | ƒ d | ƒ d  S(   Ns   file '%s' not in directory '%s's"   file '%s' does not begin with '%s's    file '%s' does not end with '%s's6   random string '%s' does not match /^[a-zA-Z0-9_-]{6}$/(   t   ost   patht   splitt   namet   ndirt   nbaset   lent   pret   npret   suft   nsufR   t   assertEqualt   abspatht   dirt   assert_t	   str_checkt   match(	   R   R   R!   R   R   R   R   R   R   (    (    R   t	   nameCheck1   s    $#(   t   __name__t
   __module__t   ret   compileR#   R   R   R%   (    (    (    R   R
   (   s   t   test_exportsc           B   s   t  Z d „  Z RS(   Nc         C   sÓ   t  i } h  d d <d d <d d <d d <d d <d d <d d <d	 d <d
 d <d d <} g  } x= | D]5 } | d d j o | | j o | i | ƒ qv qv W|  i t	 | ƒ d j d | ƒ d  S(   Nt   NamedTemporaryFilei   t   TemporaryFilet   mkstempt   mkdtempR   t   TMP_MAXt   gettempprefixt
   gettempdirt   tempdirt   templatei    t   _s   unexpected keys: %s(
   t   tempfilet   __dict__t   dictt   expectedt   unexpt   keyt   appendR   t
   failUnlessR   (   R   R7   R:   R8   R9   (    (    R   R*   F   s    	` (   R&   R'   R*   (    (    (    R   R*   E   s   t   test__RandomNameSequencec           B   s2   t  Z d  Z d „  Z d „  Z d „  Z d „  Z RS(   s6   Test the internal iterator object _RandomNameSequence.c         C   s   t  i ƒ  |  _ d  S(   N(   R5   t   _RandomNameSequenceR   t   r(   R   (    (    R   t   setUpd   s    c         C   s)   |  i i ƒ  } |  i | d d d ƒ d  S(   Nt    (   R   R?   t   nextt   sR%   (   R   RC   (    (    R   t   test_get_six_char_strg   s    c         C   si   h  } |  i } xS t t ƒ D]E } | i ƒ  } |  i | d d d ƒ |  i	 | | j ƒ d | | <q Wd  S(   NRA   i   (
   R7   R   R?   t   xranget
   TEST_FILESt   iRB   RC   R%   t   failIf(   R   RG   RC   R?   R7   (    (    R   t	   test_manyl   s    	 c         C   sX   d } |  i } y1 x* | D]" } | d 7} | d j o Pq q WWn t d ƒ n Xd  S(   Ni    i   i   t	   iteration(   RG   R   R?   RC   R   (   R   RG   R?   RC   (    (    R   t   test_supports_iterw   s    	 
(   R&   R'   t   __doc__R@   RD   RI   RK   (    (    (    R   R=   a   s
    			t   test__candidate_tempdir_listc           B   s    t  Z d  Z d „  Z d „  Z RS(   s3   Test the internal function _candidate_tempdir_list.c         C   sW   t  i ƒ  } |  i t | ƒ d j ƒ x+ | D]# } |  i t | t	 ƒ d | ƒ q, Wd  S(   Ni    s   %s is not a string(
   R5   t   _candidate_tempdir_listt   candR   RH   R   t   cR"   t
   isinstancet
   basestring(   R   RP   RO   (    (    R   t   test_nonempty_listŠ   s     c         C   s  g  } zð xN d D]F } t i | ƒ } | p* t i i | ƒ t i | <| i | ƒ q q Wt	 i
 ƒ  } xA d D]9 } t i | ƒ } | p
 t ‚ n |  i | | j ƒ qm Wy t i ƒ  } Wn% t t i f j
 o t i } n X|  i | | j ƒ Wd  x | D] } t i | =q WXd  S(   Nt   TMPDIRt   TEMPt   TMP(   RT   RU   RV   (   RT   RU   RV   (   t   addedt   envnameR   t   getenvt   dirnameR   R    t   environR;   R5   RN   RO   t
   ValueErrorR   R"   t   getcwdt   AttributeErrort   errort   curdirt   p(   R   RO   RW   Ra   RX   RZ   (    (    R   t   test_wanted_dirs”   s0       
  (   R&   R'   RL   RS   Rb   (    (    (    R   RM   ‡   s    	
t   test__get_candidate_namesc           B   s    t  Z d  Z d „  Z d „  Z RS(   s0   Test the internal function _get_candidate_names.c         C   s)   t  i ƒ  } |  i t | t  i ƒ ƒ d  S(   N(   R5   t   _get_candidate_namest   objR   R"   RQ   R>   (   R   Re   (    (    R   t   test_retval½   s    c         C   s/   t  i ƒ  } t  i ƒ  } |  i | | j ƒ d  S(   N(   R5   Rd   t   at   bR   R"   (   R   Rg   Rh   (    (    R   t   test_same_thingÂ   s    (   R&   R'   RL   Rf   Ri   (    (    (    R   Rc   º   s    	t   test__mkstemp_innerc           B   sl   t  Z d  Z d f  d „  ƒ  YZ e d d d d „ Z d „  Z d „  Z d „  Z d	 „  Z	 d
 „  Z
 d „  Z RS(   s*   Test the internal function _mkstemp_inner.t	   mkstempedc           B   sG   t  Z e i Z e i Z e i Z	 e i
 Z d „  Z d „  Z d „  Z RS(   Nc         C   sE   | o |  i } n
 |  i } t i | | | | ƒ \ |  _
 |  _ d  S(   N(   t   binR   t   _bflagst   flagst   _tflagsR5   t   _mkstemp_innerR!   R   R   t   fdR   (   R   R!   R   R   Rl   Rn   (    (    R   t   __init__Õ   s     	c         C   s   t  i |  i | ƒ d  S(   N(   R   t   writeR   Rq   t   str(   R   Rt   (    (    R   Rs   Û   s    c         C   s$   |  i |  i ƒ |  i |  i ƒ d  S(   N(   R   t   _closeRq   t   _unlinkR   (   R   (    (    R   t   __del__Þ   s    (   R&   R'   R5   t   _bin_openflagsRm   t   _text_openflagsRo   R   t   closeRu   t   unlinkRv   Rr   Rs   Rw   (    (    (    R   Rk   Ï   s   						RA   i   c         C   sm   | d  j o t i ƒ  } n y |  i | | | | ƒ } Wn |  i
 d ƒ n X|  i | i | | | ƒ | S(   NRp   (   R!   R   R5   R1   R   Rk   R   R   Rl   t   fileR   R%   R   (   R   R!   R   R   Rl   R|   (    (    R   t	   do_createâ   s    c         C   s‡   |  i ƒ  i d ƒ |  i d d ƒ i d ƒ |  i d d ƒ i d ƒ |  i d d d d ƒ i d ƒ |  i d d d d ƒ i d ƒ d  S(   Nt   blatR   Rg   R   Rh   t   aas   .txt(   R   R}   Rs   (   R   (    (    R   t
   test_basicí   s
    c         C   s7   t  t ƒ } x$ | D] } |  i d d ƒ | | <q Wd  S(   NR   R   (   t   rangeRF   t   extantRG   R   R}   (   R   RG   R‚   (    (    R   t   test_basic_manyõ   s     c         C   s>   t  i ƒ  } z |  i d | ƒ i d ƒ Wd  t i | ƒ Xd  S(   NR!   R~   (   R5   R.   R!   R   R}   Rs   R   t   rmdir(   R   R!   (    (    R   t   test_choose_directoryû   s
     c         C   sƒ   t  p d  Sn |  i ƒ  } t i t i | i ƒ i ƒ } d } t i d	 j o  | d ?} | d d d } n |  i | | ƒ d  S(
   Ni€  t   win32t   os2emxR   i   i   i   i@   (   s   win32s   os2emxs   mac(   t   has_statR   R}   R|   R   t   S_IMODER   R   t   st_modet   modeR8   R   t   platformt   userR   (   R   R   R|   R8   R‹   (    (    R   t   test_file_mode  s    
c         C   s)  t  p d  Sn t i o
 d } n d } |  i ƒ  } d | i } y
 t } Wn  t
 j
 o t i d } n Xt i i t i i t i i | ƒ ƒ d ƒ } t i d j o d t i } d | } n
 t i } t i t i t i | | | | ƒ } |  i | d j  d | ƒ |  i | d j d	 ƒ d  S(
   Nt   vt   qs   %di    s   tf_inherit_check.pyR†   s   "%s"s$   child process caught fatal signal %ds   child process reports failure(   t
   has_spawnlt   test_supportt   verboseR   R   R}   R|   Rq   t   __file__t   met	   NameErrorR   t   argvR   R   t   joinRZ   R    t   testerRŒ   t
   executablet	   decoratedR   t   P_WAITt   retvalRH   (   R   R•   R›   R™   R   Rq   R|   R   (    (    R   t   test_noinherit  s*    


$		$c         C   s,   t  p d  Sn |  i d d ƒ i d ƒ d  S(   NRl   i    s   blat
(   t   has_textmodeR   R}   Rs   (   R   (    (    R   t   test_textmode8  s    (   R&   R'   RL   Rk   R   R}   R€   Rƒ   R…   RŽ   Rž   R    (    (    (    R   Rj   Ì   s    					&t   test_gettempprefixc           B   s    t  Z d  Z d „  Z d „  Z RS(   s   Test gettempprefix().c         C   s?   t  i ƒ  } |  i t | t ƒ ƒ |  i t | ƒ d j ƒ d  S(   Ni    (   R5   R0   Ra   R   R"   RQ   RR   R   (   R   Ra   (    (    R   t   test_sane_templateF  s    c         C   s¡   t  i ƒ  d } t  i d d ƒ } zj t i i | | ƒ } y  t i | t i	 t i
 Bƒ } Wn |  i d ƒ n Xt i | ƒ t i | ƒ Wd  t i | ƒ Xd  S(   Ns
   xxxxxx.xxxt   prefixRA   s   os.open(   R5   R0   Ra   R.   t   dR   R   R˜   t   opent   O_RDWRt   O_CREATRq   R   R   Rz   R{   R„   (   R   R¤   Ra   Rq   (    (    R   t   test_usable_templateM  s      (   R&   R'   RL   R¢   R¨   (    (    (    R   R¡   C  s    	t   test_gettempdirc           B   s)   t  Z d  Z d „  Z d „  Z d „  Z RS(   s   Test gettempdir().c         C   s`   t  i ƒ  } |  i t i i | ƒ p | t i j d | ƒ |  i t i i	 | ƒ d | ƒ d  S(   Ns   %s is not an absolute paths   %s is not a directory(
   R5   R1   R!   R   R"   R   R   t   isabsR`   t   isdir(   R   R!   (    (    R   t   test_directory_existsf  s
    %c         C   sL   y' t  i ƒ  } | i d ƒ | i ƒ  Wn |  i d t  i ƒ  ƒ n Xd  S(   NR~   s   create file in %s(   R5   R+   R|   Rs   Rz   R   R   R1   (   R   R|   (    (    R   t   test_directory_writableo  s    c         C   s/   t  i ƒ  } t  i ƒ  } |  i | | j ƒ d  S(   N(   R5   R1   Rg   Rh   R   R"   (   R   Rg   Rh   (    (    R   Ri   |  s    (   R&   R'   RL   R¬   R­   Ri   (    (    (    R   R©   c  s    			t   test_mkstempc           B   s2   t  Z d  Z e d d d „ Z d „  Z d „  Z RS(   s   Test mkstemp().RA   c   	      C   sß   | d  j o t i ƒ  } n yo t i d | d | d | ƒ \ } } t	 i
 i | ƒ \ } } t	 i
 i | ƒ } |  i | | d | | f ƒ Wn |  i d ƒ n Xz |  i | | | | ƒ Wd  t	 i | ƒ t	 i | ƒ Xd  S(   NR!   R£   t   suffixs+   Directory '%s' incorrectly returned as '%s'R-   (   R!   R   R5   R1   R-   R   R   Rq   R   R   R   R   R   R   R    t   adirR   R   R   R%   Rz   R{   (	   R   R!   R   R   R   R°   R   Rq   R   (    (    R   R}   ‰  s    $ c         C   sj   |  i ƒ  |  i d d ƒ |  i d d ƒ |  i d d d d ƒ |  i d d d d ƒ |  i d d ƒ d  S(	   NR   Rg   R   Rh   R   s   .txtR!   t   .(   R   R}   (   R   (    (    R   R€   ›  s    
c         C   s5   t  i ƒ  } z |  i d | ƒ Wd  t i | ƒ Xd  S(   NR!   (   R5   R.   R!   R   R}   R   R„   (   R   R!   (    (    R   R…   ¤  s
     (   R&   R'   RL   R   R}   R€   R…   (    (    (    R   R®   †  s    		t   test_mkdtempc           B   sD   t  Z d  Z e d d d „ Z d „  Z d „  Z d „  Z d „  Z RS(   s   Test mkdtemp().RA   c         C   s’   | d  j o t i ƒ  } n y" t i d | d | d | ƒ } Wn |  i	 d ƒ n Xy |  i
 | | | | ƒ | SWn t i | ƒ ‚  n Xd  S(   NR!   R£   R¯   R.   (   R!   R   R5   R1   R.   R   R   R   R   R   R%   R   R„   (   R   R!   R   R   R   (    (    R   R}   ²  s    "c         C   s‡   t  i |  i ƒ  ƒ t  i |  i d d ƒ ƒ t  i |  i d d ƒ ƒ t  i |  i d d d d ƒ ƒ t  i |  i d d d d ƒ ƒ d  S(   NR   Rg   R   Rh   R   s   .txt(   R   R„   R   R}   (   R   (    (    R   R€   Á  s
    c         C   sq   t  t ƒ } z+ x$ | D] } |  i d d ƒ | | <q WWd  x/ | D]' } t | t ƒ o t i	 | ƒ qA qA WXd  S(   NR   R   (
   R   RF   R‚   RG   R   R}   RQ   RR   R   R„   (   R   RG   R‚   (    (    R   Rƒ   É  s       c         C   s>   t  i ƒ  } z t i |  i d | ƒ ƒ Wd  t i | ƒ Xd  S(   NR!   (   R5   R.   R!   R   R„   R   R}   (   R   R!   (    (    R   R…   Ô  s
     c         C   sŸ   t  p d  Sn |  i ƒ  } zo t i t i | ƒ i ƒ } | d M} d } t
 i d
 j o  | d ?} | d d d	 } n |  i | | ƒ Wd  t i | ƒ Xd  S(   Niÿ  iÀ  R†   R‡   R   i   i   i   i@   (   s   win32s   os2emxs   mac(   Rˆ   R   R}   R!   R   R‰   R   RŠ   R‹   R8   R   RŒ   R   R   R„   (   R   R   R8   R!   R‹   (    (    R   t	   test_modeÜ  s    

 (	   R&   R'   RL   R   R}   R€   Rƒ   R…   R³   (    (    (    R   R²   ¯  s    			t   test_mktempc           B   sT   t  Z d  Z d „  Z d „  Z d f  d „  ƒ  YZ d d d „ Z d „  Z d „  Z RS(	   s   Test mktemp().c         C   s   t  i ƒ  |  _ d  S(   N(   R5   R.   R   R!   (   R   (    (    R   R@   ÷  s    c         C   s+   |  i o t i |  i ƒ d  |  _ n d  S(   N(   R   R!   R   R„   R   (   R   (    (    R   t   tearDownú  s    
t   mktempedc           B   s,   t  Z e i Z e i Z d „  Z d „  Z	 RS(   Nc         C   sG   t  i d | d | d | ƒ |  _ t i t i	 |  i |  i
 d ƒ ƒ d  S(   NR!   R£   R¯   i€  (   R5   R   R!   R   R   R   R   R   Rz   R¥   Rm   (   R   R!   R   R   (    (    R   Rr     s    !c         C   s   |  i |  i ƒ d  S(   N(   R   Rv   R   (   R   (    (    R   Rw   	  s    (
   R&   R'   R   R{   Rv   R5   Rx   Rm   Rr   Rw   (    (    (    R   R¶   ÿ  s   			RA   c         C   sS   y |  i |  i | | ƒ } Wn |  i d ƒ n X|  i | i |  i | | ƒ | S(   NR   (	   R   R¶   R!   R   R   R|   R   R%   R   (   R   R   R   R|   (    (    R   R}     s    c         C   sZ   |  i ƒ  |  i d d ƒ |  i d d ƒ |  i d d d d ƒ |  i d d d d ƒ d  S(   NR   Rg   R   Rh   R   s   .txt(   R   R}   (   R   (    (    R   R€     s
    
c         C   s7   t  t ƒ } x$ | D] } |  i d d ƒ | | <q Wd  S(   NR   R   (   R   RF   R‚   RG   R   R}   (   R   RG   R‚   (    (    R   RI     s     (	   R&   R'   RL   R@   Rµ   R¶   R}   R€   RI   (    (    (    R   R´   ò  s    				t   test_NamedTemporaryFilec           B   sD   t  Z d  Z e d d d „ Z d „  Z d „  Z d „  Z d „  Z RS(   s   Test NamedTemporaryFile().RA   c         C   ss   | d  j o t i ƒ  } n y" t i d | d | d | ƒ } Wn |  i	 d ƒ n X|  i
 | i | | | ƒ | S(   NR!   R£   R¯   R+   (   R!   R   R5   R1   R+   R   R   R|   R   R   R%   R   (   R   R!   R   R   R|   (    (    R   R}   4  s    "c         C   sZ   |  i ƒ  |  i d d ƒ |  i d d ƒ |  i d d d d ƒ |  i d d d d ƒ d  S(   NR   Rg   R   Rh   R   s   .txt(   R   R}   (   R   (    (    R   R€   @  s
    
c         C   s6   t  i ƒ  } |  i t i i | i ƒ d | i ƒ d  S(   Ns$   NamedTemporaryFile %s does not exist(	   R5   R+   t   fR   R<   R   R   t   existsR   (   R   R¸   (    (    R   t   test_creates_namedH  s    c         C   st   t  i ƒ  } zS t  i d | ƒ } | i d ƒ | i ƒ  |  i t	 i
 i | i ƒ d | i ƒ Wd  t	 i | ƒ Xd  S(   NR!   R~   s(   NamedTemporaryFile %s exists after close(   R5   R.   R!   R+   R¸   Rs   Rz   R   RH   R   R   R¹   R   R„   (   R   R!   R¸   (    (    R   t   test_del_on_closeN  s    
 c         C   sV   t  i ƒ  } | i d ƒ | i ƒ  y | i ƒ  | i ƒ  Wn |  i d ƒ n Xd  S(   Ns   abc
Rz   (   R5   R+   R¸   Rs   Rz   R   R   (   R   R¸   (    (    R   t   test_multiple_closeZ  s    

(	   R&   R'   RL   R   R}   R€   Rº   R»   R¼   (    (    (    R   R·   1  s    			t   test_TemporaryFilec           B   s)   t  Z d  Z d „  Z d „  Z d „  Z RS(   s   Test TemporaryFile().c         C   s)   y t  i ƒ  Wn |  i d ƒ n Xd  S(   NR,   (   R5   R,   R   R   (   R   (    (    R   R€   n  s    c         C   s}   t  i ƒ  } t  i d | ƒ } | i d ƒ y t i | ƒ Wn: t i	 ƒ  } | i ƒ  t i | ƒ |  i d | ƒ n Xd  S(   NR!   R~   R„   (   R5   R.   R!   R,   R¸   Rs   R   R„   R   R   R   Rz   R   R   (   R   R   R¸   R!   (    (    R   t   test_has_no_namev  s    
c         C   sV   t  i ƒ  } | i d ƒ | i ƒ  y | i ƒ  | i ƒ  Wn |  i d ƒ n Xd  S(   Ns   abc
Rz   (   R5   R,   R¸   Rs   Rz   R   R   (   R   R¸   (    (    R   R¼   ‡  s    

(   R&   R'   RL   R€   R¾   R¼   (    (    (    R   R½   k  s    		c           C   s   t  i t Œ  d  S(   N(   R’   t   run_unittestt   test_classes(    (    (    R   t	   test_main˜  s    t   __main__(   R   R	   ((   R5   R   R   R(   t   errnot   warningst   unittestt   testR’   t   filterwarningst   RuntimeWarningR&   t   hasattrR   Rˆ   Ry   Rx   RŸ   R‘   RŒ   RF   t   TestCaseR
   RÀ   R*   R;   R=   RM   Rc   Rj   R¡   R©   R®   R²   R´   R·   R½   R+   R,   RÁ   (   R’   RÅ   R´   Rc   R²   Rj   R5   RÃ   R½   R(   R©   R=   R
   RF   Rˆ   RÁ   R   RÄ   RŸ   RM   R   R*   R¡   R®   R·   R‘   RÀ   R   (    (    R   t   ?   sf   									


#-t &@97*	