ó
šßÈ[c           @   s¹   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 d l	 m
 Z
 d d l m Z d	 d
 l m Z m Z m Z m Z d „  Z d e f d „  ƒ  YZ d S(   iÿÿÿÿNi   (   t   get_pkg_data_filenamei   (   t   SAMPHubServer(   t   SAMPIntegratedClient(   t   SAMPProxyError(   t   confi   (   t   random_paramst   Receivert   assert_outputt
   TEST_REPLYc         C   s   t  t _ d  S(   N(   t   FalseR   t   use_internet(   t   module(    (    sG   lib/python2.7/site-packages/astropy/samp/tests/test_standard_profile.pyt   setup_module   s    t   TestStandardProfilec           B   sP   e  Z e d  „  ƒ Z e d „  ƒ Z e d „  ƒ Z d „  Z d „  Z d „  Z RS(   c         C   s   i  S(   N(    (   t   self(    (    sG   lib/python2.7/site-packages/astropy/samp/tests/test_standard_profile.pyt   hub_init_kwargs   s    c         C   s   i  S(   N(    (   R   (    (    sG   lib/python2.7/site-packages/astropy/samp/tests/test_standard_profile.pyt   client_init_kwargs   s    c         C   s   i  S(   N(    (   R   (    (    sG   lib/python2.7/site-packages/astropy/samp/tests/test_standard_profile.pyt   client_connect_kwargs    s    c         C   s¬   t  j ƒ  |  _ t d t d d d d |  j  |  _ |  j j ƒ  t |  j	   |  _
 |  j
 j d |  j d d |  j  t |  j	   |  _ |  j j d |  j d d |  j  d  S(   Nt   web_profilet   modet   multiplet	   pool_sizei   t   hub(   t   tempfilet   mkdtempt   tmpdirR   R	   R   R   t   startR   R   t   client1t   connectR   t   client2(   R   t   method(    (    sG   lib/python2.7/site-packages/astropy/samp/tests/test_standard_profile.pyt   setup_method$   s    "c         C   sI   |  j  j r |  j  j ƒ  n  |  j j r8 |  j j ƒ  n  |  j j ƒ  d  S(   N(   R   t   is_connectedt
   disconnectR   R   t   stop(   R   R   (    (    sG   lib/python2.7/site-packages/astropy/samp/tests/test_standard_profile.pyt   teardown_method2   s
    c         C   sÍ  |  j  j ƒ  |  _ |  j j ƒ  |  _ i d d 6d d 6d d 6|  _ i d d 6d d 6d	 d 6|  _ |  j  j sr t ‚ |  j j s„ t ‚ |  j  j	 ƒ  |  j j	 ƒ  |  j |  j  j
 ƒ  k s¼ t ‚ |  j |  j  j
 ƒ  k sÚ t ‚ |  j |  j j
 ƒ  k sø t ‚ |  j |  j j
 ƒ  k st ‚ |  j  j |  j ƒ i  k s7t ‚ |  j  j |  j ƒ i  k sXt ‚ |  j j |  j ƒ i  k syt ‚ |  j j |  j ƒ i  k sšt ‚ |  j  j |  j ƒ |  j  j |  j ƒ |  j k sÑt ‚ |  j j |  j ƒ |  j k sõt ‚ |  j  j |  j ƒ i  k st ‚ |  j j |  j ƒ i  k s7t ‚ |  j j |  j ƒ |  j  j |  j ƒ |  j k snt ‚ |  j j |  j ƒ |  j k s’t ‚ |  j  j |  j ƒ |  j k s¶t ‚ |  j j |  j ƒ |  j k sÚt ‚ i  } d
 | d <i  | d <t j t ƒ  |  j  j |  j | ƒ Wd  QX|  j  j d
 ƒ i  k s>t ‚ |  j j d
 ƒ i  k s\t ‚ t |  j  ƒ } t |  j ƒ } |  j j d
 | j ƒ |  j j d
 | j ƒ |  j  j d | j ƒ |  j  j d
 ƒ i i  |  j 6k sät ‚ |  j j d
 ƒ i  k st ‚ d
 |  j  j |  j ƒ k s#t ‚ d
 |  j j |  j ƒ k sDt ‚ t |  j ƒ } |  j  j |  j j ƒ  i d
 d 6| d 6ƒ t d
 |  j j ƒ  |  j | d d ƒt |  j ƒ } |  j  j |  j j ƒ  d
 |  t d
 |  j j ƒ  |  j | d d ƒt |  j ƒ } |  j  j i d
 d 6| d 6ƒ t d
 |  j j ƒ  |  j | d d ƒt |  j ƒ } |  j  j  d
 |  t d
 |  j j ƒ  |  j | d d ƒt |  j ƒ } |  j  j! |  j j ƒ  d i d
 d 6| d 6ƒ t d
 |  j j ƒ  |  j | d d ƒt |  j ƒ } |  j  j" |  j j ƒ  d d
 |  t d
 |  j j ƒ  |  j | d d ƒt |  j ƒ } |  j  j# d i d
 d 6| d 6ƒ t d
 |  j j ƒ  |  j | d d ƒt |  j ƒ } |  j  j$ d d
 |  t d
 |  j j ƒ  |  j | d d ƒt |  j ƒ } |  j  j% |  j j ƒ  i d
 d 6| d 6d d ƒ} | t& k s7t ‚ t d
 |  j j ƒ  |  j | d d ƒt |  j ƒ } |  j  j' |  j j ƒ  d
 d d | } | t& k s¤t ‚ t d
 |  j j ƒ  |  j | d d ƒd  S(   Ns   Client 1s	   samp.names   Client 1 Descriptions   samp.description.texts   1.1s   client.versions   Client 2s   Client 2 Descriptions   1.2s   table.load.votables
   samp.mtypes   samp.paramss   test-tagt   timeouti<   t   tag1t   tag2i   ((   R   t   get_public_idt
   client1_idR   t
   client2_idt	   metadata1t	   metadata2R    t   AssertionErrort   pingt   get_registered_clientst   get_metadatat   declare_metadatat   pytestt   raisesR   t   notifyt   get_subscribed_clientsR   t   bind_receive_notificationt   receive_notificationt   bind_receive_callt   receive_callt   bind_receive_responset   receive_responset   get_subscriptionsR   R   R   t   get_private_keyt   enotifyt
   notify_allt   enotify_allt   callt   ecallt   call_allt	   ecall_allt   call_and_waitR   t   ecall_and_wait(   R   t   messaget   rec1t   rec2t   paramst   result(    (    sG   lib/python2.7/site-packages/astropy/samp/tests/test_standard_profile.pyt	   test_main;   sÎ    

!!!!$$!!$$$$



(!!






(	   t   __name__t
   __module__t   propertyR   R   R   R   R#   RK   (    (    (    sG   lib/python2.7/site-packages/astropy/samp/tests/test_standard_profile.pyR      s   			(   t   sslR   R1   t
   utils.dataR    R   R   t   integrated_clientR   t   errorsR   t    R   t   test_helpersR   R   R   R   R   t   objectR   (    (    (    sG   lib/python2.7/site-packages/astropy/samp/tests/test_standard_profile.pyt   <module>   s   "	