ó
>ò†[c           @  sÆ   d  d l  m 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 y d  d l Z Wn e k
 r¥ e Z n Xe Z d e
 f d	 „  ƒ  YZ d S(
   iÿÿÿÿ(   t   unicode_literalsN(   t   patch(   t   errors(   t   main(   t   CLITestCase(   t   urlpatcht   Testc           B  s½   e  Z e d  ƒ e d ƒ e d ƒ e d „  ƒ ƒ ƒ ƒ Z e d  ƒ e d ƒ e d ƒ e d „  ƒ ƒ ƒ ƒ Z e j e d ƒ e d „  ƒ ƒ Z	 e j e d ƒ e d  ƒ e d „  ƒ ƒ ƒ Z
 RS(	   u)   binstar_client.commands.login.store_tokenu   getpass.getpassu#   binstar_client.commands.login.inputc         C  s÷   d | _  d | _  | j d d d d d d ƒ | j d d	 d
 d ƒ | j d d d d d
 d ƒ } t d d g t ƒ |  j d |  j j ƒ  ƒ | j ƒ  |  j d | j j	 ƒ |  j d | j j	 d ƒ |  j
 | j ƒ |  j | j d d d ƒ d  S(   Nu	   test_useru   passwordt   pathu   /t   methodu   HEADt   statusiÈ   u   /authentication-typet   contentu#   {"authentication_type": "password"}u   POSTu   /authenticationsu   {"token": "a-token"}u   --show-tracebacku   loginu   login successfulu   Authorizationu   Basic i    u   a-token(   t   return_valuet   registerR   t   Falset   assertInt   streamt   getvaluet   assertCalledt   reqt   headerst
   assertTruet   calledt   assertEqualt	   call_args(   t   selft   urlst   inputt   getpasst   store_tokent   auth(    (    s^   lib/python2.7/site-packages/anaconda_client-1.7.2-py2.7.egg/binstar_client/tests/test_login.pyt
   test_login   s    		
c         C  s÷   d | _  d | _  | j d d d d d d ƒ | j d d	 d d
 ƒ | j d d d d d d ƒ } t d d g t ƒ |  j d |  j j ƒ  ƒ | j ƒ  |  j d | j j	 ƒ |  j d | j j	 d ƒ |  j
 | j ƒ |  j | j d d d ƒ d  S(   Nu	   test_useru   passwordR   u   /R   u   HEADR	   iÈ   u   /authentication-typei”  u   POSTu   /authenticationsR
   u   {"token": "a-token"}u   --show-tracebacku   loginu   login successfulu   Authorizationu   Basic i    u   a-token(   R   R   R   R   R   R   R   R   R   R   R   R   R   R   (   R   R   R   R   R   R   (    (    s^   lib/python2.7/site-packages/anaconda_client-1.7.2-py2.7.egg/binstar_client/tests/test_login.pyt   test_login_compatible/   s    		
u)   prompts user to install requests-kerberosc         C  se   | j  d d d d d d ƒ | j  d d d d	 ƒ |  j t j d
 ƒ  t d d g t ƒ Wd  QXd  S(   NR   u   /R   u   HEADR	   iÈ   u   /authentication-typeR
   u#   {"authentication_type": "kerberos"}u   conda install requests-kerberosu   --show-tracebacku   login(   R   t   assertRaisesRegexpR   t   BinstarErrorR   R   (   R   R   (    (    s^   lib/python2.7/site-packages/anaconda_client-1.7.2-py2.7.egg/binstar_client/tests/test_login.pyt   test_login_kerberos_missingF   s    u   requires requests-kerberosc           s×   ˆ  j  d d d d d d ƒ ˆ  j  d d d d	 ƒ ‡  f d
 †  } ˆ  j  d d d d d d d i d d 6d | ƒ } t d d g t ƒ |  j d |  j j ƒ  ƒ ˆ  j ƒ  |  j | j ƒ |  j	 | j
 d d d ƒ d  S(   NR   u   /R   u   HEADR	   iÈ   u   /authentication-typeR
   u#   {"authentication_type": "kerberos"}c            s/   ˆ  j  d d d d d d d i d d	 6ƒ }  d  S(
   NR   u   POSTR   u   /authenticationsR
   u   {"token": "a-token"}R   u   Negotiate STOKENu   WWW-Authenticate(   R   (   t   auth_success(   R   (    s^   lib/python2.7/site-packages/anaconda_client-1.7.2-py2.7.egg/binstar_client/tests/test_login.pyt   update_authenticationsW   s
    	u   POSTu   /authenticationsi‘  R   u	   Negotiateu   WWW-Authenticatet   side_effectu   --show-tracebacku   loginu   login successfuli    u   a-token(   R   R   R   R   R   R   t   assertAllCalledR   R   R   R   (   R   R   R   R$   t	   auth_fail(    (   R   s^   lib/python2.7/site-packages/anaconda_client-1.7.2-py2.7.egg/binstar_client/tests/test_login.pyt   test_login_kerberosO   s    	1
(   t   __name__t
   __module__R   R   R   R   t   unittestt   skipIft   have_kerberosR"   R(   (    (    (    s^   lib/python2.7/site-packages/anaconda_client-1.7.2-py2.7.egg/binstar_client/tests/test_login.pyR      s   							(   t
   __future__R    R+   t   mockR   t   binstar_clientR   t   binstar_client.scripts.cliR   t   binstar_client.tests.fixtureR   t   binstar_client.tests.urlmockR   t   requests_kerberost   ImportErrorR   R-   t   TrueR   (    (    (    s^   lib/python2.7/site-packages/anaconda_client-1.7.2-py2.7.egg/binstar_client/tests/test_login.pyt   <module>   s   
