;
Ìâ"Ic               @   sð   d  d l  Z  d  d l m Z d  d l Z d  d l Z d  d l Z d  d l Z d  d l Z d  d l Z d  d l	 Z	 e j
 d k Z e o
 d Z n d Z d „  Z Gd „  d e  j ƒ Z Gd	 „  d
 e  j ƒ Z d „  Z e d k o e ƒ  n d S(   i    N(   u   supportu   win32u@   import msvcrt; msvcrt.setmode(sys.stdout.fileno(), os.O_BINARY);u    c             C   s   t  j d d |  j ƒ  ƒ j ƒ  S(   Nu   \[\d+ refs\]?
?$u    (   u   reu   subu   decodeu   encode(   u   stderr(    (    u1   /mit/python/lib/python3.0/test/test_subprocess.pyu   remove_stderr_debug_decorations   s    c             B   s…  |  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 „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z e j  j! d e j" ƒ  ƒ o d „  Z# n d „  Z$ d  „  Z% d! „  Z& d" „  Z' d# „  Z( d$ „  Z) d% „  Z* d& „  Z+ d' „  Z, d( „  Z- d) „  Z. e/ py d* „  Z0 d+ „  Z1 d, „  Z2 d- „  Z3 d. „  Z4 d/ „  Z5 d0 „  Z6 d1 „  Z7 d2 „  Z8 d3 „  Z9 d4 „  Z: d5 „  Z; d6 „  Z< n e/ o^ d7 „  Z= d8 „  Z> d9 „  Z6 d: „  Z? d; „  Z7 d< „  Z8 d= „  Z9 d> „  Z: d? „  Z; d@ „  Z< n dA S(B   c             C   s"   t  t d ƒ o t j ƒ  n d  S(   Nu   reap_children(   u   hasattru   supportu   reap_children(   u   self(    (    u1   /mit/python/lib/python3.0/test/test_subprocess.pyu   setUp   s    c             C   s"   t  t d ƒ o t j ƒ  n d  S(   Nu   reap_children(   u   hasattru   supportu   reap_children(   u   self(    (    u1   /mit/python/lib/python3.0/test/test_subprocess.pyu   tearDown%   s    c             C   sK   t  t d ƒ o t j ƒ  St j ƒ  } t j | t j t j Bƒ | f Sd S(   u?   wrapper for mkstemp, calling mktemp if mkstemp is not availableu   mkstempN(   u   hasattru   tempfileu   mkstempu   mktempu   osu   openu   O_RDWRu   O_CREAT(   u   selfu   fname(    (    u1   /mit/python/lib/python3.0/test/test_subprocess.pyu   mkstemp+   s    c             C   s/   t  j t j d d g ƒ } |  j | d ƒ d  S(   Nu   -cu   import sys; sys.exit(47)i/   (   u
   subprocessu   callu   sysu
   executableu   assertEqual(   u   selfu   rc(    (    u1   /mit/python/lib/python3.0/test/test_subprocess.pyu   test_call_seq6   s    c             C   s/   t  j t j d d g ƒ } |  j | d ƒ d  S(   Nu   -cu   import sys; sys.exit(0)i    (   u
   subprocessu
   check_callu   sysu
   executableu   assertEqual(   u   selfu   rc(    (    u1   /mit/python/lib/python3.0/test/test_subprocess.pyu   test_check_call_zero<   s    c             C   sn   y t  j t j d d g ƒ Wn= t  j k
 o. } z |  j | j d ƒ WYd  d  } ~ Xn X|  j d ƒ d  S(   Nu   -cu   import sys; sys.exit(47)i/   u   Expected CalledProcessError(   u
   subprocessu
   check_callu   sysu
   executableu   CalledProcessErroru   assertEqualu
   returncodeu   fail(   u   selfu   e(    (    u1   /mit/python/lib/python3.0/test/test_subprocess.pyu   test_check_call_nonzeroB   s    'c             C   sN   t  j j ƒ  } d | d <t j t j d d g d | ƒ} |  j | d ƒ d  S(   Nu   bananau   FRUITu   -cu5   import sys, os;sys.exit(os.getenv("FRUIT")=="banana")u   envi   (   u   osu   environu   copyu
   subprocessu   callu   sysu
   executableu   assertEqual(   u   selfu   newenvu   rc(    (    u1   /mit/python/lib/python3.0/test/test_subprocess.pyu   test_call_kwargsL   s    
		c             C   sN   t  j t j d d g d t  j d t  j ƒ} | j ƒ  |  j | j d  ƒ d  S(   Nu   -cu   print("banana")u   stdoutu   stderr(	   u
   subprocessu   Popenu   sysu
   executableu   PIPEu   waitu   assertEqualu   stdinu   None(   u   selfu   p(    (    u1   /mit/python/lib/python3.0/test/test_subprocess.pyu   test_stdin_noneV   s    
c             C   sN   t  j t j d d g d t  j d t  j ƒ} | j ƒ  |  j | j d  ƒ d  S(   Nu   -cuS   print("    this bit of output is from a test of stdout in a different process ...")u   stdinu   stderr(	   u
   subprocessu   Popenu   sysu
   executableu   PIPEu   waitu   assertEqualu   stdoutu   None(   u   selfu   p(    (    u1   /mit/python/lib/python3.0/test/test_subprocess.pyu   test_stdout_none]   s
    	
c             C   sN   t  j t j d d g d t  j d t  j ƒ} | j ƒ  |  j | j d  ƒ d  S(   Nu   -cu   print("banana")u   stdinu   stdout(	   u
   subprocessu   Popenu   sysu
   executableu   PIPEu   waitu   assertEqualu   stderru   None(   u   selfu   p(    (    u1   /mit/python/lib/python3.0/test/test_subprocess.pyu   test_stderr_noneg   s    
c             C   sB   t  j d d d g d t j ƒ} | j ƒ  |  j | j d ƒ d  S(   Nu   somethingyoudonthaveu   -cu   import sys; sys.exit(47)u
   executablei/   (   u
   subprocessu   Popenu   sysu
   executableu   waitu   assertEqualu
   returncode(   u   selfu   p(    (    u1   /mit/python/lib/python3.0/test/test_subprocess.pyu   test_executablen   s
    	
c             C   sb   t  j t j d d g d t  j ƒ} | j j d ƒ | j j ƒ  | j ƒ  |  j	 | j
 d ƒ d  S(   Nu   -cu0   import sys; sys.exit(sys.stdin.read() == "pear")u   stdins   peari   (   u
   subprocessu   Popenu   sysu
   executableu   PIPEu   stdinu   writeu   closeu   waitu   assertEqualu
   returncode(   u   selfu   p(    (    u1   /mit/python/lib/python3.0/test/test_subprocess.pyu   test_stdin_pipeu   s    	
c             C   s}   t  j ƒ  } | j ƒ  } t j | d ƒ t j | d d ƒ t j t j	 d d g d | ƒ} | j
 ƒ  |  j | j d ƒ d  S(   Ns   peari    u   -cu0   import sys; sys.exit(sys.stdin.read() == "pear")u   stdini   (   u   tempfileu   TemporaryFileu   filenou   osu   writeu   lseeku
   subprocessu   Popenu   sysu
   executableu   waitu   assertEqualu
   returncode(   u   selfu   tfu   du   p(    (    u1   /mit/python/lib/python3.0/test/test_subprocess.pyu   test_stdin_filedes   s    		
c             C   sh   t  j ƒ  } | j d ƒ | j d ƒ t j t j d d g d | ƒ} | j ƒ  |  j	 | j
 d ƒ d  S(   Ns   peari    u   -cu0   import sys; sys.exit(sys.stdin.read() == "pear")u   stdini   (   u   tempfileu   TemporaryFileu   writeu   seeku
   subprocessu   Popenu   sysu
   executableu   waitu   assertEqualu
   returncode(   u   selfu   tfu   p(    (    u1   /mit/python/lib/python3.0/test/test_subprocess.pyu   test_stdin_fileobj‹   s    		
c             C   sA   t  j t j d d g d t  j ƒ} |  j | j j ƒ  d ƒ d  S(   Nu   -cu&   import sys; sys.stdout.write("orange")u   stdouts   orange(   u
   subprocessu   Popenu   sysu
   executableu   PIPEu   assertEqualu   stdoutu   read(   u   selfu   p(    (    u1   /mit/python/lib/python3.0/test/test_subprocess.pyu   test_stdout_pipe–   s    	c             C   sv   t  j ƒ  } | j ƒ  } t j t j d d g d | ƒ} | j ƒ  t j	 | d d ƒ |  j
 t j | d ƒ d ƒ d  S(   Nu   -cu&   import sys; sys.stdout.write("orange")u   stdouti    i   s   orange(   u   tempfileu   TemporaryFileu   filenou
   subprocessu   Popenu   sysu
   executableu   waitu   osu   lseeku   assertEqualu   read(   u   selfu   tfu   du   p(    (    u1   /mit/python/lib/python3.0/test/test_subprocess.pyu   test_stdout_filedes   s    		
c             C   s^   t  j ƒ  } t j t j d d g d | ƒ} | j ƒ  | j d ƒ |  j | j	 ƒ  d ƒ d  S(   Nu   -cu&   import sys; sys.stdout.write("orange")u   stdouti    s   orange(
   u   tempfileu   TemporaryFileu
   subprocessu   Popenu   sysu
   executableu   waitu   seeku   assertEqualu   read(   u   selfu   tfu   p(    (    u1   /mit/python/lib/python3.0/test/test_subprocess.pyu   test_stdout_fileobj¨   s    		
c             C   sG   t  j t j d d g d t  j ƒ} |  j t | j j ƒ  ƒ d ƒ d  S(   Nu   -cu*   import sys; sys.stderr.write("strawberry")u   stderrs
   strawberry(	   u
   subprocessu   Popenu   sysu
   executableu   PIPEu   assertEqualu   remove_stderr_debug_decorationsu   stderru   read(   u   selfu   p(    (    u1   /mit/python/lib/python3.0/test/test_subprocess.pyu   test_stderr_pipe²   s
    	c             C   s|   t  j ƒ  } | j ƒ  } t j t j d d g d | ƒ} | j ƒ  t j	 | d d ƒ |  j
 t t j | d ƒ ƒ d ƒ d  S(   Nu   -cu*   import sys; sys.stderr.write("strawberry")u   stderri    i   s
   strawberry(   u   tempfileu   TemporaryFileu   filenou
   subprocessu   Popenu   sysu
   executableu   waitu   osu   lseeku   assertEqualu   remove_stderr_debug_decorationsu   read(   u   selfu   tfu   du   p(    (    u1   /mit/python/lib/python3.0/test/test_subprocess.pyu   test_stderr_filedesº   s    		
c             C   sd   t  j ƒ  } t j t j d d g d | ƒ} | j ƒ  | j d ƒ |  j t	 | j
 ƒ  ƒ d ƒ d  S(   Nu   -cu*   import sys; sys.stderr.write("strawberry")u   stderri    s
   strawberry(   u   tempfileu   TemporaryFileu
   subprocessu   Popenu   sysu
   executableu   waitu   seeku   assertEqualu   remove_stderr_debug_decorationsu   read(   u   selfu   tfu   p(    (    u1   /mit/python/lib/python3.0/test/test_subprocess.pyu   test_stderr_fileobjÆ   s    		
c             C   s\   t  j t j d d g d t  j d t  j ƒ} | j j ƒ  } t | ƒ } |  j	 | d ƒ d  S(   Nu   -cuR   import sys;sys.stdout.write("apple");sys.stdout.flush();sys.stderr.write("orange")u   stdoutu   stderrs   appleorange(
   u
   subprocessu   Popenu   sysu
   executableu   PIPEu   STDOUTu   stdoutu   readu   remove_stderr_debug_decorationsu   assertEqual(   u   selfu   pu   outputu   stripped(    (    u1   /mit/python/lib/python3.0/test/test_subprocess.pyu   test_stdout_stderr_pipeÑ   s    		c             C   sv   t  j ƒ  } t j t j d d g d | d | ƒ} | j ƒ  | j d ƒ | j ƒ  } t	 | ƒ } |  j
 | d ƒ d  S(   Nu   -cuR   import sys;sys.stdout.write("apple");sys.stdout.flush();sys.stderr.write("orange")u   stdoutu   stderri    s   appleorange(   u   tempfileu   TemporaryFileu
   subprocessu   Popenu   sysu
   executableu   waitu   seeku   readu   remove_stderr_debug_decorationsu   assertEqual(   u   selfu   tfu   pu   outputu   stripped(    (    u1   /mit/python/lib/python3.0/test/test_subprocess.pyu   test_stdout_stderr_fileÞ   s    		
c             C   s;   d } t  j t j d | g d d ƒ} |  j | d ƒ d  S(   Nu?   import sys, os; sys.exit(os.write(sys.stdout.fileno(), b'.\n'))u   -cu   stdouti   i   (   u
   subprocessu   callu   sysu
   executableu   assertEquals(   u   selfu   cmdu   rc(    (    u1   /mit/python/lib/python3.0/test/test_subprocess.pyu   test_stdout_filedes_of_stdoutî   s    !c             C   s¦   t  j ƒ  } t j ƒ  } t j | ƒ t j ƒ  } t j | ƒ t j t j d d g d t j	 d | ƒ} t j
 j } |  j | | j j ƒ  j d ƒ ƒ | | ƒ ƒ d  S(   Nu   -cu+   import sys,os;sys.stdout.write(os.getcwd())u   stdoutu   cwdu   utf-8(   u   tempfileu
   gettempdiru   osu   getcwdu   chdiru
   subprocessu   Popenu   sysu
   executableu   PIPEu   pathu   normcaseu   assertEqualu   stdoutu   readu   decode(   u   selfu   tmpdiru   cwdu   pu   normcase(    (    u1   /mit/python/lib/python3.0/test/test_subprocess.pyu   test_cwdô   s    			!c             C   s`   t  j j ƒ  } d | d <t j t j d d g d t j d | ƒ} |  j | j	 j
 ƒ  d ƒ d  S(   Nu   orangeu   FRUITu   -cu2   import sys,os;sys.stdout.write(os.getenv("FRUIT"))u   stdoutu   envs   orange(   u   osu   environu   copyu
   subprocessu   Popenu   sysu
   executableu   PIPEu   assertEqualu   stdoutu   read(   u   selfu   newenvu   p(    (    u1   /mit/python/lib/python3.0/test/test_subprocess.pyu   test_env  s    
			c             C   sH   t  j t j d d g d t  j ƒ} | j d ƒ |  j | j d ƒ d  S(   Nu   -cu/   import sys;sys.exit(sys.stdin.read() == "pear")u   stdins   peari   (   u
   subprocessu   Popenu   sysu
   executableu   PIPEu   communicateu   assertEqualu
   returncode(   u   selfu   p(    (    u1   /mit/python/lib/python3.0/test/test_subprocess.pyu   test_communicate_stdin  s
    	c             C   sZ   t  j t j d d g d t  j ƒ} | j ƒ  \ } } |  j | d ƒ |  j | d  ƒ d  S(   Nu   -cu)   import sys; sys.stdout.write("pineapple")u   stdouts	   pineapple(   u
   subprocessu   Popenu   sysu
   executableu   PIPEu   communicateu   assertEqualu   None(   u   selfu   pu   stdoutu   stderr(    (    u1   /mit/python/lib/python3.0/test/test_subprocess.pyu   test_communicate_stdout  s    	c             C   s`   t  j t j d d g d t  j ƒ} | j ƒ  \ } } |  j | d  ƒ |  j t | ƒ d ƒ d  S(   Nu   -cu)   import sys; sys.stderr.write("pineapple")u   stderrs	   pineapple(	   u
   subprocessu   Popenu   sysu
   executableu   PIPEu   communicateu   assertEqualu   Noneu   remove_stderr_debug_decorations(   u   selfu   pu   stdoutu   stderr(    (    u1   /mit/python/lib/python3.0/test/test_subprocess.pyu   test_communicate_stderr  s    	c             C   su   t  j t j d d g d t  j d t  j d t  j ƒ} | j d ƒ \ } } |  j | d ƒ |  j t | ƒ d ƒ d  S(   Nu   -cuN   import sys,os;sys.stderr.write("pineapple");sys.stdout.write(sys.stdin.read())u   stdinu   stdoutu   stderrs   bananas	   pineapple(   u
   subprocessu   Popenu   sysu
   executableu   PIPEu   communicateu   assertEqualu   remove_stderr_debug_decorations(   u   selfu   pu   stdoutu   stderr(    (    u1   /mit/python/lib/python3.0/test/test_subprocess.pyu   test_communicate)  s    			u   /proc/%d/fdc             C   s¤   d t  j ƒ  } t t  j | ƒ ƒ } t j t j d d g d t j ƒ} | j	 ƒ  t t  j | ƒ ƒ } ~ t t  j | ƒ ƒ } |  j
 | | ƒ |  j
 | | ƒ d  S(   Nu   /proc/%d/fdu   -cu   print()u   stdout(   u   osu   getpidu   lenu   listdiru
   subprocessu   Popenu   sysu
   executableu   PIPEu   communicateu   assertEqual(   u   selfu   fd_directoryu   num_fds_before_popenu   pu   num_fds_after_communicateu   num_fds_after_destruction(    (    u1   /mit/python/lib/python3.0/test/test_subprocess.pyu   test_communicate_pipe_fd_leak:  s    
c             C   sQ   t  j t j d d g ƒ } | j ƒ  \ } } |  j | d  ƒ |  j | d  ƒ d  S(   Nu   -cu   import sys; sys.exit(47)(   u
   subprocessu   Popenu   sysu
   executableu   communicateu   assertEqualu   None(   u   selfu   pu   stdoutu   stderr(    (    u1   /mit/python/lib/python3.0/test/test_subprocess.pyu   test_communicate_returnsF  s
    c             C   s¼   t  j ƒ  \ } } t o
 d } n t  j | d ƒ } t  j | ƒ t  j | ƒ t j t j d d | g d t j	 d t j	 d t j	 ƒ} d | } | j
 | ƒ \ } } |  j | | ƒ d  S(	   Ni   u   PC_PIPE_BUFu   -cup   import sys,os;sys.stdout.write(sys.stdin.read(47));sys.stderr.write("xyz"*%d);sys.stdout.write(sys.stdin.read())u   stdinu   stdoutu   stderrs   abc(   u   osu   pipeu	   mswindowsu	   fpathconfu   closeu
   subprocessu   Popenu   sysu
   executableu   PIPEu   communicateu   assertEqual(   u   selfu   xu   yu   pipe_bufu   pu   string_to_writeu   stdoutu   stderr(    (    u1   /mit/python/lib/python3.0/test/test_subprocess.pyu   test_communicate_pipe_bufN  s    

		
c             C   s…   t  j t j d d g d t  j d t  j d t  j ƒ} | j j d ƒ | j d ƒ \ } } |  j | d ƒ |  j t	 | ƒ d	 ƒ d  S(
   Nu   -cu0   import sys,os;sys.stdout.write(sys.stdin.read())u   stdinu   stdoutu   stderrs   bananas   splits   bananasplits    (
   u
   subprocessu   Popenu   sysu
   executableu   PIPEu   stdinu   writeu   communicateu   assertEqualu   remove_stderr_debug_decorations(   u   selfu   pu   stdoutu   stderr(    (    u1   /mit/python/lib/python3.0/test/test_subprocess.pyu   test_writes_before_communicatee  s    			c             C   sU   t  j t j d d t d g d t  j d d ƒ} | j j ƒ  } |  j | d ƒ d  S(   Nu   -cu   import sys,os;u	  sys.stdout.write("line1\n");sys.stdout.flush();sys.stdout.write("line2\n");sys.stdout.flush();sys.stdout.write("line3\r\n");sys.stdout.flush();sys.stdout.write("line4\r");sys.stdout.flush();sys.stdout.write("\nline5");sys.stdout.flush();sys.stdout.write("\nline6");u   stdoutu   universal_newlinesi   u#   line1
line2
line3
line4
line5
line6(	   u
   subprocessu   Popenu   sysu
   executableu	   SETBINARYu   PIPEu   stdoutu   readu   assertEqual(   u   selfu   pu   stdout(    (    u1   /mit/python/lib/python3.0/test/test_subprocess.pyu   test_universal_newlinesr  s    
		c             C   sa   t  j t j d d t d g d t  j d t  j d d ƒ} | j ƒ  \ } } |  j | d ƒ d  S(	   Nu   -cu   import sys,os;u	  sys.stdout.write("line1\n");sys.stdout.flush();sys.stdout.write("line2\n");sys.stdout.flush();sys.stdout.write("line3\r\n");sys.stdout.flush();sys.stdout.write("line4\r");sys.stdout.flush();sys.stdout.write("\nline5");sys.stdout.flush();sys.stdout.write("\nline6");u   stdoutu   stderru   universal_newlinesi   u#   line1
line2
line3
line4
line5
line6(   u
   subprocessu   Popenu   sysu
   executableu	   SETBINARYu   PIPEu   communicateu   assertEqual(   u   selfu   pu   stdoutu   stderr(    (    u1   /mit/python/lib/python3.0/test/test_subprocess.pyu#   test_universal_newlines_communicate…  s    
	c          	   C   s­   t  t d ƒ p t j d ƒ o t o
 d } n d } xm t | ƒ D]_ } t j t j d d g d t j	 d t j	 d	 t j	 ƒ} | j
 d
 ƒ d } |  j | d
 ƒ qF Wd  S(   Nu   is_resource_enabledu
   subprocessi  iA   u   -cu-   import sys;sys.stdout.write(sys.stdin.read())u   stdinu   stdoutu   stderrs   limei    (   u   hasattru   supportu   is_resource_enabledu	   mswindowsu   rangeu
   subprocessu   Popenu   sysu
   executableu   PIPEu   communicateu   assertEqual(   u   selfu   max_handlesu   iu   pu   data(    (    u1   /mit/python/lib/python3.0/test/test_subprocess.pyu   test_no_leaking™  s    
 			c             C   s0  |  j  t j d d d g ƒ d ƒ |  j  t j d d d g ƒ d ƒ |  j  t j d d d g ƒ d	 ƒ |  j  t j d
 d d g ƒ d ƒ |  j  t j d d d g ƒ d ƒ |  j  t j d d d g ƒ d ƒ |  j  t j d d d g ƒ d ƒ |  j  t j d d g ƒ d ƒ |  j  t j d d g ƒ d ƒ d  S(   Nu   a b cu   du   eu   "a b c" d eu   ab"cu   \u	   ab\"c \ du    \u   ab\"c " \\" du   a\\\bu   de fgu   hu   a\\\b "de fg" hu   a\"bu   cu
   a\\\"b c du   a\\b cu   "a\\b c" d eu   a\\b\ cu   "a\\b\ c" d eu   abu    u   ab ""u   echou   foo|baru   echo "foo|bar"(   u   assertEqualu
   subprocessu   list2cmdline(   u   self(    (    u1   /mit/python/lib/python3.0/test/test_subprocess.pyu   test_list2cmdline«  s$    c             C   s€   t  j t j d d g ƒ } d } x/ | j ƒ  d  k o t j d ƒ | d 7} q$ W|  j | d k ƒ |  j	 | j ƒ  d ƒ d  S(   Nu   -cu   import time; time.sleep(1)i    gš™™™™™¹?i   i   (
   u
   subprocessu   Popenu   sysu
   executableu   pollu   Noneu   timeu   sleepu   assert_u   assertEqual(   u   selfu   pu   count(    (    u1   /mit/python/lib/python3.0/test/test_subprocess.pyu	   test_pollÀ  s     c             C   sK   t  j t j d d g ƒ } |  j | j ƒ  d ƒ |  j | j ƒ  d ƒ d  S(   Nu   -cu   import time; time.sleep(2)i    (   u
   subprocessu   Popenu   sysu
   executableu   assertEqualu   wait(   u   selfu   p(    (    u1   /mit/python/lib/python3.0/test/test_subprocess.pyu	   test_waitÐ  s    c          
   C   sH   y  t  j t j d d g d ƒ Wn t k
 o Yn X|  j d ƒ d  S(   Nu   -cu   passu   orangeu   Expected TypeError(   u
   subprocessu   Popenu   sysu
   executableu	   TypeErroru   fail(   u   self(    (    u1   /mit/python/lib/python3.0/test/test_subprocess.pyu   test_invalid_bufsizeØ  s
     c             C   so   t  j t j d d g d  ƒ } |  j | j ƒ  d ƒ t  j t j d d g d d  ƒ} |  j | j ƒ  d ƒ d  S(   Nu   -cu   passi    u   bufsize(   u
   subprocessu   Popenu   sysu
   executableu   Noneu   assertEqualu   wait(   u   selfu   p(    (    u1   /mit/python/lib/python3.0/test/test_subprocess.pyu   test_bufsize_is_noneâ  s    !c             C   s|   y% t  j t j d d g d d ƒ} WnC t k
 o7 } z! |  j | j j d ƒ d ƒ WYd  d  } ~ Xn X|  j d ƒ d  S(   Nu   -cu    u   cwdu   /this/path/does/not/existu   os.chdiriÿÿÿÿu   Expected OSError(	   u
   subprocessu   Popenu   sysu
   executableu   OSErroru   assertNotEqualu   child_tracebacku   findu   fail(   u   selfu   pu   e(    (    u1   /mit/python/lib/python3.0/test/test_subprocess.pyu   test_exceptionsî  s    0c             C   sd   y9 d d l  } | j | j ƒ } | j | j d ƒ | SWn$ t t | j f k
 o d SYn Xd S(   ux   Try to prevent core files from being created.
            Returns previous ulimit if successful, else None.
            i    N(   i    i    (   u   resourceu	   getrlimitu   RLIMIT_COREu	   setrlimitu   ImportErroru
   ValueErroru   erroru   None(   u   selfu   resourceu	   old_limit(    (    u1   /mit/python/lib/python3.0/test/test_subprocess.pyu   _suppress_core_filesú  s    c          
   C   s`   | d k o d Sy# d d l } | j | j | ƒ Wn$ t t | j f k
 o d SYn Xd S(   u%   Return core file behavior to default.Ni    (   u   Noneu   resourceu	   setrlimitu   RLIMIT_COREu   ImportErroru
   ValueErroru   error(   u   selfu	   old_limitu   resource(    (    u1   /mit/python/lib/python3.0/test/test_subprocess.pyu   _unsuppress_core_files  s    c          
   C   sa   |  j  ƒ  } z t j t j d d g ƒ } Wd  |  j | ƒ X| j ƒ  |  j | j t	 j
 ƒ d  S(   Nu   -cu   import os; os.abort()(   u   _suppress_core_filesu
   subprocessu   Popenu   sysu
   executableu   _unsuppress_core_filesu   waitu   assertEqualu
   returncodeu   signalu   SIGABRT(   u   selfu	   old_limitu   p(    (    u1   /mit/python/lib/python3.0/test/test_subprocess.pyu   test_run_abort  s    
c             C   sJ   t  j t j d d g d t  j d d „  ƒ} |  j | j j ƒ  d ƒ d  S(   Nu   -cu2   import sys,os;sys.stdout.write(os.getenv("FRUIT"))u   stdoutu
   preexec_fnc               S   s   t  j d  d ƒ S(   u   FRUITu   apple(   u   osu   putenv(    (    (    u1   /mit/python/lib/python3.0/test/test_subprocess.pyu   <lambda>!  s   	s   apple(   u
   subprocessu   Popenu   sysu
   executableu   PIPEu   assertEqualu   stdoutu   read(   u   selfu   p(    (    u1   /mit/python/lib/python3.0/test/test_subprocess.pyu   test_preexec  s
    		c          	   C   s´   |  j  ƒ  \ } } t | d ƒ j } j ƒ  } z. | ~ } | j d ƒ | j d t j ƒ Wd  | ~ QXt j | d ƒ t	 j
 | ƒ } | j ƒ  t j | ƒ |  j | j d ƒ d  S(   Nu   wu
   #!/bin/sh
u(   exec '%s' -c 'import sys; sys.exit(47)'
iÀ  i/   (   u   mkstempu   openu   __exit__u	   __enter__u   writeu   sysu
   executableu   osu   chmodu
   subprocessu   Popenu   waitu   removeu   assertEqualu
   returncode(   u   selfu   fdu   fnameu   _[2]u   _[1]u   fobju   p(    (    u1   /mit/python/lib/python3.0/test/test_subprocess.pyu   test_args_string%  s    (	
c             C   sT   |  j  t t j t j d d g d d ƒ|  j  t t j t j d d g d d ƒd  S(   Nu   -cu   import sys; sys.exit(47)u   startupinfoi/   u   creationflags(   u   assertRaisesu
   ValueErroru
   subprocessu   callu   sysu
   executable(   u   self(    (    u1   /mit/python/lib/python3.0/test/test_subprocess.pyu   test_invalid_args3  s    c             C   sf   t  j j ƒ  } d | d <t j d g d d d t j d | ƒ} |  j | j j ƒ  j	 d ƒ d	 ƒ d  S(
   Nu   appleu   FRUITu   echo $FRUITu   shelli   u   stdoutu   envs    	
s   apple(
   u   osu   environu   copyu
   subprocessu   Popenu   PIPEu   assertEqualu   stdoutu   readu   strip(   u   selfu   newenvu   p(    (    u1   /mit/python/lib/python3.0/test/test_subprocess.pyu   test_shell_sequence>  s    
		c             C   sc   t  j j ƒ  } d | d <t j d d d d t j d | ƒ} |  j | j j ƒ  j	 d ƒ d	 ƒ d  S(
   Nu   appleu   FRUITu   echo $FRUITu   shelli   u   stdoutu   envs    	
s   apple(
   u   osu   environu   copyu
   subprocessu   Popenu   PIPEu   assertEqualu   stdoutu   readu   strip(   u   selfu   newenvu   p(    (    u1   /mit/python/lib/python3.0/test/test_subprocess.pyu   test_shell_stringG  s    
		c          	   C   s§   |  j  ƒ  \ } } t | d ƒ j } j ƒ  } z. | ~ } | j d ƒ | j d t j ƒ Wd  | ~ QXt j | d ƒ t	 j
 | ƒ } t j | ƒ |  j | d ƒ d  S(   Nu   wu
   #!/bin/sh
u(   exec '%s' -c 'import sys; sys.exit(47)'
iÀ  i/   (   u   mkstempu   openu   __exit__u	   __enter__u   writeu   sysu
   executableu   osu   chmodu
   subprocessu   callu   removeu   assertEqual(   u   selfu   fdu   fnameu   _[2]u   _[1]u   fobju   rc(    (    u1   /mit/python/lib/python3.0/test/test_subprocess.pyu   test_call_stringP  s    (	c             C   sg   t  j t j d d g ƒ } |  j | j ƒ  d  k | j ƒ  ƒ | j t j	 ƒ |  j
 | j ƒ  d ƒ d  S(   Nu   -cu   input()i    (   u
   subprocessu   Popenu   sysu
   executableu   assert_u   pollu   Noneu   send_signalu   signalu   SIGINTu   assertNotEqualu   wait(   u   selfu   p(    (    u1   /mit/python/lib/python3.0/test/test_subprocess.pyu   DISABLED_test_send_signal]  s
    "c             C   se   t  j t j d d g ƒ } |  j | j ƒ  d  k | j ƒ  ƒ | j ƒ  |  j | j	 ƒ  t
 j ƒ d  S(   Nu   -cu   input()(   u
   subprocessu   Popenu   sysu
   executableu   assert_u   pollu   Noneu   killu   assertEqualu   waitu   signalu   SIGKILL(   u   selfu   p(    (    u1   /mit/python/lib/python3.0/test/test_subprocess.pyu   DISABLED_test_kille  s
    "
c             C   se   t  j t j d d g ƒ } |  j | j ƒ  d  k | j ƒ  ƒ | j ƒ  |  j | j	 ƒ  t
 j ƒ d  S(   Nu   -cu   input()(   u
   subprocessu   Popenu   sysu
   executableu   assert_u   pollu   Noneu	   terminateu   assertEqualu   waitu   signalu   SIGTERM(   u   selfu   p(    (    u1   /mit/python/lib/python3.0/test/test_subprocess.pyu   DISABLED_test_terminatem  s
    "
c             C   sM   d } d } t  j ƒ  } | | _ | | _ t  j t j d d g d | ƒd  S(   Ni   i   u   -cu   import sys; sys.exit(0)u   startupinfo(   u
   subprocessu   STARTUPINFOu   dwFlagsu   wShowWindowu   callu   sysu
   executable(   u   selfu   STARTF_USESHOWWINDOWu   SW_MAXIMIZEu   startupinfo(    (    u1   /mit/python/lib/python3.0/test/test_subprocess.pyu   test_startupinfoy  s    		c             C   s4   d } t  j j d ƒ t j t  j d d | ƒd  S(   Ni   u'       a DOS box should flash briefly ...
u#    -c "import time; time.sleep(0.25)"u   creationflags(   u   sysu   stderru   writeu
   subprocessu   callu
   executable(   u   selfu   CREATE_NEW_CONSOLE(    (    u1   /mit/python/lib/python3.0/test/test_subprocess.pyu   test_creationflagsˆ  s
    c             C   s`   |  j  t t j t j d d g d d „  ƒ|  j  t t j t j d d g d t j d d ƒd  S(   Nu   -cu   import sys; sys.exit(47)u
   preexec_fnc               S   s   d  S(   i   (    (    (    (    u1   /mit/python/lib/python3.0/test/test_subprocess.pyu   <lambda>•  s    u   stdoutu	   close_fdsT(   u   assertRaisesu
   ValueErroru
   subprocessu   callu   sysu
   executableu   PIPEu   True(   u   self(    (    u1   /mit/python/lib/python3.0/test/test_subprocess.pyu   test_invalid_args  s    
	c             C   s5   t  j t j d d g d d ƒ} |  j | d ƒ d  S(   Nu   -cu   import sys; sys.exit(47)u	   close_fdsi/   T(   u
   subprocessu   callu   sysu
   executableu   Trueu   assertEqual(   u   selfu   rc(    (    u1   /mit/python/lib/python3.0/test/test_subprocess.pyu   test_close_fdsœ  s    		c             C   sf   t  j j ƒ  } d | d <t j d g d d d t j d | ƒ} |  j | j j ƒ  j	 d ƒ d	 ƒ d  S(
   Nu   physalisu   FRUITu   setu   shelli   u   stdoutu   envs   physalisiÿÿÿÿ(
   u   osu   environu   copyu
   subprocessu   Popenu   PIPEu   assertNotEqualu   stdoutu   readu   find(   u   selfu   newenvu   p(    (    u1   /mit/python/lib/python3.0/test/test_subprocess.pyu   test_shell_sequence£  s    
		c             C   sc   t  j j ƒ  } d | d <t j d d d d t j d | ƒ} |  j | j j ƒ  j	 d ƒ d	 ƒ d  S(
   Nu   physalisu   FRUITu   setu   shelli   u   stdoutu   envs   physalisiÿÿÿÿ(
   u   osu   environu   copyu
   subprocessu   Popenu   PIPEu   assertNotEqualu   stdoutu   readu   find(   u   selfu   newenvu   p(    (    u1   /mit/python/lib/python3.0/test/test_subprocess.pyu   test_shell_string¬  s    
		c             C   s*   t  j t j d ƒ } |  j | d ƒ d  S(   Nu    -c "import sys; sys.exit(47)"i/   (   u
   subprocessu   callu   sysu
   executableu   assertEqual(   u   selfu   rc(    (    u1   /mit/python/lib/python3.0/test/test_subprocess.pyu   test_call_stringµ  s    
c             C   sg   t  j t j d d g ƒ } |  j | j ƒ  d  k | j ƒ  ƒ | j t j	 ƒ |  j
 | j ƒ  d ƒ d  S(   Nu   -cu   input()i    (   u
   subprocessu   Popenu   sysu
   executableu   assert_u   pollu   Noneu   send_signalu   signalu   SIGTERMu   assertNotEqualu   wait(   u   selfu   p(    (    u1   /mit/python/lib/python3.0/test/test_subprocess.pyu   DISABLED_test_send_signal»  s
    "c             C   sa   t  j t j d d g ƒ } |  j | j ƒ  d  k | j ƒ  ƒ | j ƒ  |  j | j	 ƒ  d ƒ d  S(   Nu   -cu   input()i    (
   u
   subprocessu   Popenu   sysu
   executableu   assert_u   pollu   Noneu   killu   assertNotEqualu   wait(   u   selfu   p(    (    u1   /mit/python/lib/python3.0/test/test_subprocess.pyu   DISABLED_test_killÃ  s
    "
c             C   sa   t  j t j d d g ƒ } |  j | j ƒ  d  k | j ƒ  ƒ | j ƒ  |  j | j	 ƒ  d ƒ d  S(   Nu   -cu   input()i    (
   u
   subprocessu   Popenu   sysu
   executableu   assert_u   pollu   Noneu	   terminateu   assertNotEqualu   wait(   u   selfu   p(    (    u1   /mit/python/lib/python3.0/test/test_subprocess.pyu   DISABLED_test_terminateË  s
    "
N(@   u   __name__u
   __module__u   setUpu   tearDownu   mkstempu   test_call_sequ   test_check_call_zerou   test_check_call_nonzerou   test_call_kwargsu   test_stdin_noneu   test_stdout_noneu   test_stderr_noneu   test_executableu   test_stdin_pipeu   test_stdin_filedesu   test_stdin_fileobju   test_stdout_pipeu   test_stdout_filedesu   test_stdout_fileobju   test_stderr_pipeu   test_stderr_filedesu   test_stderr_fileobju   test_stdout_stderr_pipeu   test_stdout_stderr_fileu   test_stdout_filedes_of_stdoutu   test_cwdu   test_envu   test_communicate_stdinu   test_communicate_stdoutu   test_communicate_stderru   test_communicateu   osu   pathu   isdiru   getpidu   test_communicate_pipe_fd_leaku   test_communicate_returnsu   test_communicate_pipe_bufu   test_writes_before_communicateu   test_universal_newlinesu#   test_universal_newlines_communicateu   test_no_leakingu   test_list2cmdlineu	   test_pollu	   test_waitu   test_invalid_bufsizeu   test_bufsize_is_noneu	   mswindowsu   test_exceptionsu   _suppress_core_filesu   _unsuppress_core_filesu   test_run_abortu   test_preexecu   test_args_stringu   test_invalid_argsu   test_shell_sequenceu   test_shell_stringu   test_call_stringu   DISABLED_test_send_signalu   DISABLED_test_killu   DISABLED_test_terminateu   test_startupinfou   test_creationflagsu   test_close_fds(   u
   __locals__(    (    u1   /mit/python/lib/python3.0/test/test_subprocess.pyu   ProcessTestCase   s†   
						
	
		
			
					
								
			
											
				
		
																				u   ProcessTestCasec             B   s+   |  Ee  Z e j d  k o d „  Z n d S(   u   posixc          	   C   s¬   |  j  t j d ƒ d ƒ |  j  t j d ƒ d ƒ d  } zN t j ƒ  } t j j	 | d ƒ } t j d | ƒ \ } } |  j
 | d ƒ Wd  | d  k	 o t j | ƒ n Xd  S(   Nu
   echo xyzzyu   xyzzyi    u   foou   cat (   i    u   xyzzy(   u   assertEqualsu
   subprocessu	   getoutputu   getstatusoutputu   Noneu   tempfileu   mkdtempu   osu   pathu   joinu   assertNotEqualsu   rmdir(   u   selfu   diru   nameu   statusu   output(    (    u1   /mit/python/lib/python3.0/test/test_subprocess.pyu   test_getoutputÛ  s    N(   u   __name__u
   __module__u   osu   nameu   test_getoutput(   u
   __locals__(    (    u1   /mit/python/lib/python3.0/test/test_subprocess.pyu   CommandTestsÓ  s   
u   CommandTestsc               C   s   t  j t t ƒ t  j ƒ  d  S(   N(   u   supportu   run_unittestu   ProcessTestCaseu   CommandTestsu   reap_children(    (    (    u1   /mit/python/lib/python3.0/test/test_subprocess.pyu	   test_mainî  s    u   __main__(   u   unittestu   testu   supportu
   subprocessu   sysu   signalu   osu   tempfileu   timeu   reu   platformu	   mswindowsu	   SETBINARYu   remove_stderr_debug_decorationsu   TestCaseu   ProcessTestCaseu   CommandTestsu	   test_mainu   __name__(    (    (    u1   /mit/python/lib/python3.0/test/test_subprocess.pyu   <module>   s(   
	ÿ ÿ ·	