Ë
    ûûàgó  ã                   óæ   — d dl mZ 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 ej                  d„ «       Zd	„ Zd
„ Zd„ Zej$                  j'                  dddhdfdhdfg«      d„ «       Zd„ Zy)é    )ÚANY)ÚreverseN)Ú"AUTHENTICATION_METHODS_SESSION_KEY)ÚLOGIN_SESSION_KEY)ÚEmailAddress)ÚLoginByCodeStagec                 ó   ‡ — ˆ fd„}|S )Nc                 óÖ  •— | j                  t        d«      dz   «      }|j                  dk(  sJ ‚d|j                  v sJ ‚| j	                  t        d«      |ddœ¬«      }|j                  dk(  sJ ‚|d	   t        d
«      dz   k(  sJ ‚t        ‰«      dk(  sJ ‚| j                  t           d   d   t        j                     d   d   }t        |«      dk(  sJ ‚|‰d   j                  v sJ ‚|S )NÚaccount_request_login_codez
?next=/fooéÈ   s   value="/foo"ú/foo)ÚemailÚnext©Údataé.  ÚlocationÚaccount_confirm_login_codez?next=%2Ffooé   ÚstateÚstagesr   Úcodeé   r   )Úgetr   Ústatus_codeÚcontentÚpostÚlenÚsessionr   r   ÚkeyÚbody)Úclientr   Úrespr   Ú
mailoutboxs       €úf/var/www/skyplay_api_hub/venv/lib/python3.12/site-packages/allauth/account/tests/test_login_by_code.pyÚfz request_login_by_code.<locals>.f   s  ø€ Ø�z‰zœ'Ð">Ó?À,ÑNÓOˆØ×Ñ 3Ò&Ð&Ð&Ø $§,¡,Ñ.Ð.Ð.Ø�{‰{ÜÐ0Ó1À%ÐQWÑ8Xð ó 
ˆð ×Ñ 3Ò&Ð&Ð&à�Ñ¤Ð(DÓ EÈÑ VÒVð	
ØVä�:‹ !Ò#Ð#Ð#Ø�~‰~Ô/Ñ0°Ñ9¸(ÑCÜ× Ñ ñ
à
ñàñˆô �4‹y˜AŠ~Ðˆ~Ø�z !‘}×)Ñ)Ñ)Ð)Ð)Øˆó    © )r$   r&   s   ` r%   Úrequest_login_by_coder)      s   ø€ ôð& €Hr'   c                 óB  —  || |j                   «      }d|dd z   dz   |dd  z   }| j                  t        d«      |ddœ¬«      }|j                  dk(  sJ ‚t        | j
                  vsJ ‚|d	   dk(  sJ ‚| j
                  t           d
   d|j                   t        dœk(  sJ ‚y )Nú r   é   r   r   )r   r   r   r   r   éÿÿÿÿr   )Úmethodr   Úat)r   r   r   r   r   r   r   r   )r"   Úuserr)   r   Úcode_with_wsr#   s         r%   Útest_login_by_coder2   %   sÄ   € Ù  ¨¯©Ó4€DØ˜˜a ˜‘? SÑ(¨4°°¨8Ñ3€LØ�;‰;ÜÐ,Ó-Ø"¨FÑ3ð ó €Dð ×Ñ˜sÒ"Ð"Ð"Ü F§N¡NÑ2Ð2Ð2Ø�
Ñ˜vÒ%Ð%Ð%Ø�>‰>Ô<Ñ=¸bÑAØØ—‘ÜñFò ð ñ r'   c                 óœ  — d|_          || |j                  «       t        d«      D ]¤  }| j                  t	        d«      ddi¬«      }|dk\  r9|j
                  dk(  sJ ‚|d	   t	        d
«      k(  sJ ‚t        | j                  vrŒ]J ‚|j
                  dk(  sJ ‚t        | j                  v sJ ‚|j                  d   j                  ddgik(  rŒ¤J ‚ y )Né   r,   r   r   Úwrongr   r   r   r   r   r   ÚformzIncorrect code.)
Ú"ACCOUNT_LOGIN_BY_CODE_MAX_ATTEMPTSr   Úranger   r   r   r   r   ÚcontextÚerrors)r"   r0   r)   ÚsettingsÚir#   s         r%   Útest_login_by_code_max_attemptsr=   6   sä   € Ø23€HÔ/Ù˜& $§*¡*Ô-Ü�1‹Xò PˆØ�{‰{ÜÐ0Ó1¸ÀÐ8Ið ó 
ˆð �Š6Ø×#Ñ# sÒ*Ð*Ð*Ø˜
Ñ#¤wÐ/KÓ'LÒLÐLÐLÜ$¨F¯N©NÒ:Ð:Ð:à×#Ñ# sÒ*Ð*Ð*Ü$¨¯©Ñ6Ð6Ð6Ø—<‘< Ñ'×.Ñ.°6Ð<MÐ;NÐ2OÓOÐOÐOñPr'   c                 óÄ   — |j                  t        d«      ddi¬«      }|j                  dk(  sJ ‚|d   t        d«      k(  sJ ‚|j                  t        d«      dd	i¬«      }y )
Nr   r   zunknown@email.orgr   r   r   r   r   Ú123456)r   r   r   )r$   r"   Údbr#   s       r%   Útest_login_by_code_unknown_userrA   G   ss   € Ø�;‰;ÜÐ,Ó-ØÐ*Ð+ð ó €Dð ×Ñ˜sÒ"Ð"Ð"Ø�
ÑœwÐ'CÓDÒDÐDÐDØ�;‰;”wÐ;Ó<ÀFÈHÐCUˆ;ÓV�Dr'   zsetting,code_required)TTÚpasswordTÚsocialaccountFc                 ó¶  —  |«       } ||d¬«      }t         j                  j                  |j                  ¬«      }|j                  rJ ‚||_        | j                  t        d«      |j                  |dœ¬«      }	|	j                  dk(  sJ ‚|r¹|	d   t        d	«      k(  sJ ‚| j                  t           d
   d   t        j                     d   d   }
| j                  t        d	«      |j                  |dœ¬«      }	|	j                  dk(  sJ ‚| j                  t        d	«      d|
i¬«      }	|j                  «        |j                  sJ ‚|	d   |j                  k(  sJ ‚y )NF)rB   Úemail_verified)r   Úaccount_login)ÚloginrB   r   r   r   r   r   r   r   r   r   )r   Úobjectsr   r   ÚverifiedÚACCOUNT_LOGIN_BY_CODE_REQUIREDr   r   Úusernamer   r   r   r   r    Úrefresh_from_dbÚLOGIN_REDIRECT_URL)r"   r;   Úuser_factoryÚpassword_factoryÚsettingÚcode_requiredrB   r0   Úemail_addressr#   r   s              r%   Útest_login_by_code_requiredrS   Q   sm  € ñ  Ó!€HÙ ¸%Ô@€DÜ ×(Ñ(×,Ñ,°4·:±:Ð,Ó>€MØ×%Ò%Ð%Ð%Ø.5€HÔ+Ø�;‰;Ü�Ó Ø—}‘}°(Ñ;ð ó €Dð ×Ñ˜sÒ"Ð"Ð"ÙØ�JÑ¤7Ð+GÓ#HÒHÐHÐHØ�~‰~Ô/Ñ0°Ñ9¸(ÑCÜ× Ñ ñ
à
ñàñˆð �z‰zÜÐ0Ó1ØŸ=™=°hÑ?ð ó 
ˆð ×Ñ 3Ò&Ð&Ð&Ø�{‰{œ7Ð#?Ó@ÈÐPTÀ~ˆ{ÓVˆØ×%Ñ%Ô'Ø×%Ò%Ð%Ð%Ø�
Ñ˜x×:Ñ:Ò:Ð:Ñ:r'   c                 ó„   —  || |j                   «       | j                  t        d«      «      }|d   t        d«      k(  sJ ‚y )NrF   r   r   )r   r   r   )r"   r0   r)   r#   s       r%   Útest_login_by_code_redirectrU   v   s<   € Ù˜& $§*¡*Ô-Ø�:‰:”g˜oÓ.Ó/€DØ�
ÑœwÐ'CÓDÒDÐDÑDr'   )Úunittest.mockr   Údjango.urlsr   ÚpytestÚallauth.account.authenticationr   Ú!allauth.account.internal.stagekitr   Úallauth.account.modelsr   Úallauth.account.stagesr   Úfixturer)   r2   r=   rA   ÚmarkÚparametrizerS   rU   r(   r'   r%   ú<module>r`      sŒ   ðÝ å ã å MÝ ?Ý /Ý 3ð ‡�ñó ðò.ò"Pò"Wð ‡�×ÑØàØ
ˆ�tÐØ
Ð	˜EÐ"ðóñ;óð;ó:Er'   