Your IP : 216.73.216.213
��Yf� � @ s� d Z d d l Z d d l Z d d l m Z d d l m Z d d l m Z d d l m Z e j
d � Z Gd d � d e j � Z
e d
k r� e j � d S)zCTest InteractiveConsole and InteractiveInterpreter from code module� N)�dedent)� ExitStack)�mock)�support�codec @ s� e Z d Z d d � Z d d � Z d d � Z d d � Z d d
� Z d d � Z d
d � Z d d � Z
d d � Z d d � Z d S)�TestInteractiveConsolec C s t j � | _ | j � d S)N)r ZInteractiveConsole�console�mock_sys)�self� r �:/opt/alt/python35/lib64/python3.5/test/test_code_module.py�setUp s zTestInteractiveConsole.setUpc C s� t � } | j | j � | j t j d d d �� | _ | j t j d � � | _ | j t j d � � | _ t j d d t j
d t j
�} | j | � | _ t
j t
j
k r� | j j
| j _ d S)
z.Mock system environment for InteractiveConsolez
code.inputZcreateTzcode.sys.stdoutzcode.sys.stderrzcode.sys�wraps�specN)r Z
addCleanup�close�
enter_contextr Zpatch�infunc�stdout�stderrr �sys�sysmod�
excepthook�__excepthook__)r
�stackZprepatchr r r r s !zTestInteractiveConsole.mock_sysc C s9 t d � | j _ | j j � | j | j j d � d S)N�Finishedz>>> )�EOFErrorr �side_effectr �interact�assertEqualr Zps1)r
r r r �test_ps1 s
zTestInteractiveConsole.test_ps1c C s9 t d � | j _ | j j � | j | j j d � d S)Nr z... )r r r r r r r Zps2)r
r r r �test_ps2% s
zTestInteractiveConsole.test_ps2c C so d d t d � g | j _ | j j � x@ t | j j � D] } d d j | d � k r; Pq; Wt d � � d S)Nz 'antioch'� r Zantioch� zno console stdout)
r r r r r �listr �method_calls�join�AssertionError)r
�callr r r �test_console_stderr* s
z*TestInteractiveConsole.test_console_stderrc C sf d t d � g | j _ | j j � x: | j j D] } d d j | d � k r2 Pq2 Wt d � � d S)NZ undefinedr � NameErrorr! r"