
    f                          d dl mZ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 d dlmZ dd	lmZ dd
lmZ  G d de      Zy)    )Mockpatch)get_user_model)override_settings)reverse)consumer)SocialAccount)TestCase   )views)AXAttributec            
       V    e Zd Zd Zd Z edd eddddg	      gii
      d        Zy)OpenIDTestsc                     | j                   j                  t        d      t        d            }| j	                  d|j
                  d   j                  v        y)z
        This used to generate a server 500:
        DiscoveryFailure: No usable OpenID services found
        for http://www.google.com/
        openid_loginzhttp://www.google.comopenidr   formN)clientpostr   dict
assertTruecontexterrors)selfresps     g/var/www/cs2snipe.com/venv/lib/python3.12/site-packages/allauth/socialaccount/providers/openid/tests.pytest_discovery_failurez"OpenIDTests.test_discovery_failure   sJ     {{N#T1H%I
 	DLL$8$?$??@    c                    | j                   j                  t        t        j                        t        d            }d|d   v sJ t        d      5 }t               }t               }||_        ||_	        t               }||_        t        j                  |_        d|_        t        d      5 }t        d      5 }t               }t               }	||_        |	|_        i |_        t        j                   d	gi|	_        | j                   j                  t        d
            }| j#                  |dd       t%               j&                  j)                  d	       t*        j&                  j)                  |j                        }
|
j-                         }| j/                  |j1                         |j                         d d d        d d d        d d d        y # 1 sw Y   xY w# 1 sw Y   xY w# 1 sw Y   y xY w)N!https://steamcommunity.com/openidr   steamcommunity.com/openid/loginlocation=allauth.socialaccount.providers.openid.views._openid_consumerhttp://dummy/john/9allauth.socialaccount.providers.openid.utils.SRegResponse:allauth.socialaccount.providers.openid.utils.FetchResponseraymondopenid_callback/accounts/profile/Ffetch_redirect_response)
first_name)uid)r   r   r   r   loginr   r   r   return_valuecompleter   SUCCESSstatusidentity_urlfromSuccessResponser   PERSON_FIRST_NAMEassertRedirectsr   objectsgetr	   get_provider_accountassertEqualto_str)r   r   consumer_mockr   r1   complete_responsesr_mockfr_mock	sreg_mockax_mocksocial_accountaccounts               r   
test_loginzOpenIDTests.test_login   s   {{EKK $.Q"R
 1D4DDDDK
 "	WVFvH)/M&&FO $$5H!'/'7'7$-A*K WP W $I"fG2;G/29G/-/I*,7,I,II;+WG(;;++G4E,FGD((,05 ) 
 #$,,00I0F%2%:%:%>%>-:: &? &N -AACG$$W^^%57H7U7UV)WW"	W "	WW WW W"	W "	Ws>   AG,-G 9DG;G G,GG  G)	%G,,G5r   SERVERSyahooYahoohttp://me.yahoo.com)phone)http://axschema.org/contact/phone/defaultT)idname
openid_urlextra_attributes)SOCIALACCOUNT_PROVIDERSc           	      &   t        dd      5  | j                  j                  t        t        j
                        t        d            }d d d        dd   v sJ t        d      5 }t               }t               }t               }||_        ||_	        t               }||_        ||_
        d|j                  _        t        j                  |_        d	|_        t        d
      5 }t        d      5 }t               }	t               }
|	|_        |
|_        i |	_        t"        j$                  dgt"        j&                  dgddgi|
_        | j                  j                  t        d            }| j)                  |dd       t*        j,                  j/                  d      }| j1                  |j2                  j/                  d      d       d d d        d d d        d d d        y # 1 sw Y   xY w# 1 sw Y   'xY w# 1 sw Y   +xY w# 1 sw Y   y xY w)Nz8allauth.socialaccount.providers.openid.views.QUERY_EMAILTr!   r   r"   r#   r$   rI   r%   r&   r'   zraymond@example.comr(   rK   	123456789r)   r*   Fr+   )user__first_namerJ   )r   r   r   r   r   r/   r   r   r0   r1   endpoint
server_urlr   r2   r3   r4   r5   r   CONTACT_EMAILr6   r7   r	   r8   r9   r;   
extra_data)r   r   r=   r   r1   rT   r>   r?   r@   rA   rB   socialaccounts               r    test_login_with_extra_attributesz,OpenIDTests.test_login_with_extra_attributesF   s   * MtT 	;;##$d2U&VD	 1D4DDDDK
 '	YVFvHvH)/M&&FO $$5H!)1&4I&&1'/'7'7$-A*K YP Y $I"fG2;G/29G/-/I*#114I3J#55	{Ck],G(
  ;;++G4E,FGD((,05 ) 
 %2$9$9$=$=)2 %> %M $$]%=%=%A%A'%JKX-YY'	Y '	Y	 	,Y YY Y'	Y '	YsI   >G"'A=H$G;0CG/	G;H"G,/G84G;;H	 HHN)__name__
__module____qualname__r   rE   r   r   rY    r   r   r   r      sZ    	A(WT "$#8*	!
(-Y)(-Yr   r   N)unittest.mockr   r   django.contrib.authr   django.testr   django.urlsr   openid.consumerr   allauth.socialaccount.modelsr	   allauth.testsr
    r   utilsr   r   r]   r   r   <module>rg      s0    % . )  $ 6 "  wY( wYr   