
    f|	                        d dl Z d dlmZ d dlmZ d dlmZ d dlmZm	Z	 d dl
Z
d dlmZ d dlmZ d dlmZ e
j"                  j%                  d	d
dddddej&                  ddddfddddg      d        Zd Z ede      gZd Ze
j"                  j1                  e j2                  d    dk  d      Zee
j"                  j6                  e
j"                  j9                  d      d                       Zy)!    N)settings)HttpResponse)AsyncClient)pathreverse)flows)AccountMiddleware)ImmediateHttpResponsez;path,status_code,content_type,sec_fetch_dest, login_removed)/   	text/htmlNT)r   r   r   emptyF)r   r   r   documentT)r   r   ztext/html; charset=utf8NT)r   r   ztext/txtNF)r   i  r   NFr   r   F)z/favicon.icor   zimage/x-iconNF)/robots.txtr   
text/plainNF)r   r   r   NF)z/humans.txtr   r   NFc                     | j                  |      }|r||j                  d<   ddi|_        t        |      |d<   t	        fd      } ||       t
        j                  j                  |j                  v | u sJ y )NHTTP_SEC_FETCH_DESTaccount_loginT)statuszContent-Typec                     S )N requestresponses    `/var/www/cs2snipe.com/venv/lib/python3.12/site-packages/allauth/account/tests/test_middleware.py<lambda>z,test_remove_dangling_login.<locals>.<lambda>(   s    8     )getMETAsessionr   r	   r   loginLOGIN_SESSION_KEY)	rfr   status_codelogin_removedcontent_typesec_fetch_destr   mwr   s	           @r   test_remove_dangling_loginr)      sz    & ffTlG.<*+&-GO;/H+H^	3	4BwKKK))W__<mBSTTTr   c                 2    t        d      }t        |      )Nzraised-response)content)r   )r   r
   r   s     r   raise_immediate_http_responser,   -   s    $56H

22r   raisec                 V    d| _         |j                  d      }|j                  dk(  sJ y )Nz%allauth.account.tests.test_middlewarez/raises   raised-response)ROOT_URLCONFr   r+   )r   clientresps      r   test_immediate_http_responser2   5   s+    CH::hD<<----r      z*This test is allowed to fail on Django <5.)reasonT)transactionc                    K   t               }|j                  |        d {    |j                  d       d {   }|d   t        d      k(  sJ y 7 17 w)Nz
/accounts/locationaccount_email)r   aforce_loginr   r   )userdbaclientr1   s       r    test_accounts_redirect_async_ctxr=   @   sU      mG


t
$$$\**D
w7777 %*s   AAAAAA)djangodjango.confr   django.httpr   django.test.clientr   django.urlsr   r   pytestallauth.account.internalr   allauth.account.middlewarer	   allauth.core.exceptionsr
   markparametrize
STATIC_URLr)   r,   urlpatternsr2   skipifVERSIONskip_django_lt_5asyncio	django_dbr=   r   r   r   <module>rP      s      $ * %  * 8 9 A+/19+,			c;e<:767 U! U3
 G:;<. ;;%%
NN1"N &  
 4(8 )  8r   