B
    U²È[A  ã               @   sH   d Z ddlZddlZddlmZ ddlmZmZ ddlm	Z
 dd„ ZdS )zTest IO capturing functionalityé    N)ÚSession)ÚIOPubThreadÚ	OutStreamc           	   C   s,  t ƒ } t ¡ }| tj¡}t|ƒ}| ¡  t| |dƒ}| ¡  | 	¡  | 
¡  |jdks\t‚| ¡ rht‚t tj¡ | ¡  W dQ R X t tj¡ t|ƒ W dQ R X t tj¡ | ¡  W dQ R X t tj¡ | ¡  W dQ R X t tj¡ | ¡  W dQ R X t tj¡ | ¡  W dQ R X dS )zCTest that wrapped stdout has the same API as a normal TextIO objectÚstdoutN)r   ÚzmqZContextZsocketZPUBr   Ústartr   ÚstopÚcloseZtermÚerrorsÚAssertionErrorÚisattyÚntZassert_raisesÚioÚUnsupportedOperationÚdetachÚnextÚreadÚreadlineÚseekÚtell)ZsessionZctxZpubZthreadÚstream© r   ú6lib/python3.7/site-packages/ipykernel/tests/test_io.pyÚtest_io_api   s.    r   )Ú__doc__r   r   Zjupyter_client.sessionr   Zipykernel.iostreamr   r   Z
nose.toolsZtoolsr   r   r   r   r   r   Ú<module>   s   