U
    żĒ-eÄ  ć                   @   s`   d Z ddl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Z
dZdd	 Zed
d ZdS )zTest embedding of IPythoné    N)ŚNamedFileInTemporaryDirectory)Ś
skip_win32)ŚIPYTHON_TESTING_TIMEOUT_SCALEsO   
import IPython

a = 3
b = 14
print(a, '.', b)

IPython.embed()

print('bye!')
s   exitc               	   C   s¾   t d¬} |  t” |  ”  |  ”  tj| jg}tj	 
” }d|d< tj||tjtjtjd}| t”\}}| d”}|jdkstd|ksttjdkr¤d	|ks¤td
|ks°tW 5 Q R X dS )z!test that `IPython.embed()` workszfile_with_embed.pyŚ1ŚIPY_TEST_SIMPLE_PROMPT)ŚenvŚstdinŚstdoutŚstderrzUTF-8r   z3 . 14ŚntŚIPythonzbye!N)r   ŚwriteŚ_sample_embedŚflushŚcloseŚsysŚ
executableŚnameŚosŚenvironŚcopyŚ
subprocessŚPopenŚPIPEŚcommunicateŚ_exitŚdecodeŚ
returncodeŚAssertionError)ŚfŚcmdr   ŚpŚoutŚerrZstd© r$   śb/var/www/html/Darija-Ai-Train/env/lib/python3.8/site-packages/IPython/terminal/tests/test_embed.pyŚtest_ipython_embed)   s$    


 ’

r&   c               
   C   sģ  ddl } d}tj ” }d|d< | jtjdddg|d	}d
t |_| 	|” dt |_| 
d” | 	|” | 
d” | 
d” z d}|dkr| 	|dg”}qW n, | jk
rČ } zt| W 5 d}~X Y nX | 
d” | 	|” | 
d” | 	ddg”dksžt| 	|” | 
d” | 	ddg”dks*t| 	|” | 
d” z$d}|dkr`| 	|dg”}qDW n. | jk
r } zt| W 5 d}~X Y nX | 
d” | 	|” | 
d” | 	ddg”dksČt| 	|” | 
d” | 	ddg”dksōt| 	|” | 
d” | 	|” | 
d” | 	ddg”dks4t| 	|” | 
d” | 	ddg”dks`t| 	|” | 
d” | 	|” | 
d” | 	ddg”dks t| 	|” | 
d” | 	ddg”dksĢt| 	|” | 
d” | ”  dS )z'test that `IPython.embed()` is nestabler   Nz]:r   r   z-mr   z--colors=nocolor)r   é   é   zimport IPythonzip0 = get_ipython()zIPython.embed()é’’’’z
zembed1 = get_ipython()z/print('true' if embed1 is not ip0 else 'false')ztrue
zfalse
z=print('true' if IPython.get_ipython() is embed1 else 'false')zembed2 = get_ipython()z2print('true' if embed2 is not embed1 else 'false')z=print('true' if embed2 is IPython.get_ipython() else 'false')Śexitz5print('true' if get_ipython() is embed1 else 'false')z2print('true' if get_ipython() is ip0 else 'false')z:print('true' if IPython.get_ipython() is ip0 else 'false'))Śpexpectr   r   r   Śspawnr   r   r   ŚtimeoutŚexpectZsendlineŚTIMEOUTŚprintr   r   )r+   Z
ipy_promptr   ŚchildZpromptedŚer$   r$   r%   Śtest_nest_embedB   sz    
’

































r3   )Ś__doc__r   r   r   ZIPython.utils.tempdirr   ZIPython.testing.decoratorsr   ZIPython.testingr   r   r   r&   r3   r$   r$   r$   r%   Ś<module>   s   