ó
Û¤[c           @   sß   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 l
 m Z d d l m Z e d d	 d
 d d d d d d d d d d d d d d d ƒ 	Z d e f d „  ƒ  YZ d „  Z d „  Z d S(   s%   Tests for kernel connection utilitiesiÿÿÿÿN(   t   Config(   t   TemporaryDirectoryt   TemporaryWorkingDirectory(   t   str_to_bytes(   t   connect(   t   IPKernelAppt   ips   1.2.3.4t	   transportt   ipct
   shell_porti   t   hb_porti   t
   iopub_porti   t
   stdin_porti   t   control_porti   t   keyt   abc123t   signature_schemes   hmac-md5t   DummyKernelAppc           B   s   e  Z g  d  „ Z RS(   c         C   s   |  j  ƒ  |  j ƒ  d  S(   N(   t   init_profile_dirt   init_connection_file(   t   selft   argv(    (    s;   lib/python2.7/site-packages/ipykernel/tests/test_connect.pyt
   initialize   s    
(   t   __name__t
   __module__R   (    (    (    s;   lib/python2.7/site-packages/ipykernel/tests/test_connect.pyR      s   c       
   C   sù   t  ƒ  }  t ƒ  á } | |  j _ d } t d |  d | ƒ } | j ƒ  t j j | j	 | ƒ } | | j
 k ss t ‚ t | d ƒ  } | j d ƒ Wd  QXt j j | ƒ s° t ‚ t j | ƒ | k sË t ‚ | | _ t j | ƒ | k sï t ‚ Wd  QXd  S(   Ns   kernel.jsont   configt   connection_filet   ws   {}(   R    R   t
   ProfileDirt   locationR   R   t   ost   patht   joint   connection_dirt   abs_connection_filet   AssertionErrort   opent   writet   existsR   t   get_connection_fileR   (   t   cfgt   dt   cft   appt
   profile_cft   f(    (    s;   lib/python2.7/site-packages/ipykernel/tests/test_connect.pyt   test_get_connection_file   s    	
	c          C   sç   t  ƒ  P }  t j j |  d ƒ } t j | t  t j | ƒ } t j | d t ƒ} Wd  QXt	 | t
 ƒ sp t ‚ d „  | j ƒ  Dƒ } | t k s˜ t ‚ t j | ƒ } t | d ƒ | d <d „  | j ƒ  Dƒ } | t k sã t ‚ d  S(   Ns   kernel.jsont   unpackc         S   s+   i  |  ]! \ } } | t  k r | | “ q S(    (   t   sample_info(   t   .0t   kt   v(    (    s;   lib/python2.7/site-packages/ipykernel/tests/test_connect.pys
   <dictcomp>7   s   	 R   c         S   s+   i  |  ]! \ } } | t  k r | | “ q S(    (   R0   (   R1   R2   R3   (    (    s;   lib/python2.7/site-packages/ipykernel/tests/test_connect.pys
   <dictcomp><   s   	 (   R   R   R   R    R   t   write_connection_fileR0   t   get_connection_infot   Truet
   isinstancet   strR#   t   itemst   jsont   loadsR   (   R)   R*   t	   json_infot   infot   sub_infot   info2t	   sub_info2(    (    s;   lib/python2.7/site-packages/ipykernel/tests/test_connect.pyt   test_get_connection_info/   s    (   t   __doc__R:   R   t   traitlets.configR    t   ipython_genutils.tempdirR   R   t   ipython_genutils.py3compatR   t	   ipykernelR   t   ipykernel.kernelappR   t   dictR0   R   R.   RA   (    (    (    s;   lib/python2.7/site-packages/ipykernel/tests/test_connect.pyt   <module>   s   	