
    Ib                     R    d Z ddlZddlmZ ddlmZ  G d d      Z G d de      Zy)	zTest the config webservice API.    N)url_path_join)NotebookTestBasec                   0    e Zd ZdZd ZddZd Zd Zd Zy)		ConfigAPIzWrapper for notebook API calls.c                     || _         y N)request)selfr	   s     P/usr/lib/python3/dist-packages/notebook/services/config/tests/test_config_api.py__init__zConfigAPI.__init__   s	        Nc                 b    | j                  |t        d|      |      }|j                          |S )Nz
api/config)data)r	   r   raise_for_status)r
   verbsectionbodyresponses        r   _reqzConfigAPI._req   s7    <<lG4   
 	!!#r   c                 &    | j                  d|      S )NGET)r   )r
   r   s     r   getzConfigAPI.get   s    yy((r   c                 N    | j                  d|t        j                  |            S )NPUTr   jsondumpsr
   r   valuess      r   setzConfigAPI.set   s    yyF);<<r   c                 N    | j                  d|t        j                  |            S )NPATCHr   r   s      r   modifyzConfigAPI.modify   s    yy'4::f+=>>r   r   )	__name__
__module____qualname____doc__r   r   r   r    r#    r   r   r   r   	   s    ))=?r   r   c                   (    e Zd ZdZd Zd Zd Zd Zy)APITestzTest the config web service APIc                 8    t        | j                        | _        y r   )r   r	   
config_api)r
   s    r   setUpzAPITest.setUp!   s    #DLL1r   c                 ,   ddd}| j                   j                  d|      }| j                  |j                  d       | j                   j	                  d      }| j                  |j                  d       | j                  |j                         |       y )NbarI   )foobazexample      )r,   r    assertEqualstatus_coder   r   r
   samplers      r   test_create_retrieve_configz#APITest.test_create_retrieve_config$   st    r*OO	62,OO	*,6*r   c           
      2   dddddddid}| j                   j                  d	|       | j                   j                  d	d d
g ddd dddd id      }| j                  |j                  d       | j                  |j                         d
g ddddd       y )Nr/   r0         )abc   )r1   r2   subsub2r3   K   )         	   )r?   r@   d)r1   r2   wibrC   rD   r5   )r?   rJ   )r2   rK   rC   )r,   r    r#   r6   r7   r   r8   s      r   test_modifyzAPITest.test_modify-   s    r q)C8=Iv.OO""9d686=<=Dq6Q8;T{	/0 1 	,2g12+;$= 	>r   c                     | j                   j                  d      }| j                  |j                  d       | j                  |j	                         i        y )Nnonexistantr5   )r,   r   r6   r7   r   )r
   r:   s     r   test_get_unknownzAPITest.test_get_unknown<   s@    OO.,2&r   N)r$   r%   r&   r'   r-   r;   rL   rO   r(   r   r   r*   r*      s    )2+>'r   r*   )r'   r   notebook.utilsr   notebook.tests.launchnotebookr   r   r*   r(   r   r   <module>rR      s(    %  ( :? ?,!' !'r   