o
    h                     @   s@   d dl mZ dd Zdd Zdd Zdd	 Zd
d Zdd ZdS )    )
HTTPStatusc                 C   s~   |dgdd. | j |dd|idd}|jtjksJ | dd	dd
gtjdks-J W d    d S 1 s8w   Y  d S )Nphone*phoneACCOUNT_SIGNUP_FIELDSACCOUNT_LOGIN_METHODSheadless:account:manage_phoner   application/jsondatacontent_typesame_as_currentz5The new value must be different from the current one.)codemessageparam)errorsstatus)poststatus_coder   BAD_REQUESTjson)auth_clientuser_with_phoner   settings_impacting_urlsheadless_reverseresp r   d/var/www/html/env_mimamsha/lib/python3.10/site-packages/allauth/headless/account/tests/test_phone.pytest_change_phone_to_same   s(   "r   c           	      C   s  |dgddw | }| j |dd|idd}|jtjksJ | |dd	gd
dks.J | j |dd|d d idd}|jtjksFJ | j |dd|d d idd}|jtjks^J | j|ddd}| |dd	gddksvJ W d    d S 1 sw   Y  d S )Nr   r   r   r	   r   r
   r   F)r   verified   )r   r   headless:account:verify_phoner   )r   T   )r   r   r   ACCEPTEDr   OKCONFLICTget	r   r   r   r   r   phone_factory
sms_outbox	new_phoner   r   r   r   test_change_phone   sZ   	
"r-   c                 C   s`   |ddgdd | j |d||ddd}|jtjksJ W d    d S 1 s)w   Y  d S )	Nr   
password1*r   r   zheadless:account:loginr   passwordr
   r   )r   r   r   r&   )clientr   r   user_passwordr   r   r   r   r   r   
test_login`   s   "r3   c           	      C   s   |dgddC | j |dd|idd}|jtjksJ |d d	 }| j |d
d	|idd}|jtjks6J | }|d d sBJ W d    d S 1 sMw   Y  d S )Nr   r   r   z#headless:account:request_login_coder   r
   r   r#   r   z#headless:account:confirm_login_codemetais_authenticated)r   r   r   UNAUTHORIZEDr&   r   )	r1   r   r   r   r   r+   r   r   r   r   r   r   test_login_by_codet   s*   "r7   c                 C   s   |ddgdd[ |j |d|| ddd}|jtjksJ d	d
 | d d D d }	|	d dks6J t|dks>J |d d }
|j |dd|
idd}| d tjks[J W d    d S 1 sfw   Y  d S )Nr   r.   r   r   zheadless:account:signupr/   r
   r   c                 S   s   g | ]	}| d r|qS )
is_pending)r(   ).0flowr   r   r   
<listcomp>   s
    
ztest_signup.<locals>.<listcomp>r   flowsr   idverify_phone   r#   r   r"   r   )r   r   r   r6   r   lenr&   )dbr1   r   r   r   headless_clientpassword_factoryr+   r   pending_flowr   r   r   r   test_signup   s8   
"rE   c           	      C   s   |ddgdd/ | }| j |dd|idd}|jtjks J | d	 d
 ddigks/J W d    d S 1 s:w   Y  d S )NTr   r   )!ACCOUNT_REAUTHENTICATION_REQUIREDr   r   r	   r   r
   r   r   r<   r=   reauthenticate)r   r   r   r6   r   r)   r   r   r   test_reauthentication   s   	 "rH   N)httpr   r   r-   r3   r7   rE   rH   r   r   r   r   <module>   s    A'