Ë
    ¸2ÚiÂ  ã                   ó|  — 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	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 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  e«       Z G d„ de«      Z  G d„ de«      Z!e G d„ de«      «       Z"e G d„ de«      «       Z# G d„ de«      Z$y)é    )ÚTestCase)Úget_user_model)ÚContentType)ÚGroupÚAnonymousUser)Úmodels)ÚskipUnlessTestApp)ÚObjectPermissionTestCase)ÚProject)ÚProjectUserObjectPermission)ÚProjectGroupObjectPermission)ÚUserObjectPermission)ÚUserObjectPermissionBase)ÚGroupObjectPermission)Úget_anonymous_user)Úget_identity)Úget_user_obj_perms_model)Úget_group_obj_perms_model)Úget_obj_perms_model)ÚNotUserNorGroupc                   ó   — e Zd Zd„ Zy)ÚGetAnonymousUserTestc                 óV   — t        «       }| j                  t        |t        «      «       y ©N)r   Ú
assertTrueÚ
isinstanceÚUser)ÚselfÚanons     úX/var/www/html/acx/venv/lib/python3.12/site-packages/guardian/testapp/tests/test_utils.pyÚtestzGetAnonymousUserTest.test   s   € Ü!Ó#ˆØ�‰œ
 4¬Ó.Õ/ó    N)Ú__name__Ú
__module__Ú__qualname__r!   © r"   r    r   r      s   „ ó0r"   r   c                   ó<   — e Zd Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Z	d„ Z
y	)
ÚGetIdentityTestc                 ó–   — t        | j                  «      \  }}| j                  t        |t        «      «       | j                  |d «       y r   )r   Úuserr   r   r   ÚassertEqual©r   r*   Úgroups      r    Ú	test_userzGetIdentityTest.test_user"   s7   € Ü" 4§9¡9Ó-‰ˆˆeØ�‰œ
 4¬Ó.Ô/Ø×Ñ˜ Õ%r"   c                 ó–   — t        «       }t        |«      \  }}| j                  t        |t        «      «       | j                  |d «       y r   )r   r   r   r   r   r+   )r   r   r*   r-   s       r    Útest_anonymous_userz#GetIdentityTest.test_anonymous_user'   s:   € Ü‹ˆÜ" 4Ó(‰ˆˆeØ�‰œ
 4¬Ó.Ô/Ø×Ñ˜ Õ%r"   c                 ó–   — t        | j                  «      \  }}| j                  t        |t        «      «       | j                  |d «       y r   )r   r-   r   r   r   r+   r,   s      r    Ú
test_groupzGetIdentityTest.test_group-   s7   € Ü" 4§:¡:Ó.‰ˆˆeØ�‰œ
 5¬%Ó0Ô1Ø×Ñ˜˜tÕ$r"   c                 ó®   — | j                  t        t        d«       | j                  t        t        d«       | j                  t        t        t        «       y )Né   r   )ÚassertRaisesr   r   r   ©r   s    r    Útest_not_user_nor_groupz'GetIdentityTest.test_not_user_nor_group2   s8   € Ø×Ñœ/¬<¸Ô;Ø×Ñœ/¬<¸Ô@Ø×Ñœ/¬<¼Õ>r"   c                 óº   — t        t        j                  j                  «       «      \  }}| j	                  |t
        j                  «       | j                  |«       y r   )r   r   ÚobjectsÚallÚassertIsInstancer   ÚQuerySetÚassertIsNoner,   s      r    Útest_multiple_user_qsz%GetIdentityTest.test_multiple_user_qs7   s?   € Ü"¤4§<¡<×#3Ñ#3Ó#5Ó6‰ˆˆeØ×Ñ˜d¤F§O¡OÔ4Ø×Ñ˜%Õ r"   c                 ó„   — t        | j                  g«      \  }}| j                  |t        «       | j	                  |«       y r   )r   r*   r;   Úlistr=   r,   s      r    Útest_multiple_user_listz'GetIdentityTest.test_multiple_user_list<   s4   € Ü" D§I¡I ;Ó/‰ˆˆeØ×Ñ˜d¤DÔ)Ø×Ñ˜%Õ r"   c                 óº   — t        t        j                  j                  «       «      \  }}| j	                  |t
        j                  «       | j                  |«       y r   )r   r   r9   r:   r;   r   r<   r=   r,   s      r    Útest_multiple_group_qsz&GetIdentityTest.test_multiple_group_qsA   s?   € Ü"¤5§=¡=×#4Ñ#4Ó#6Ó7‰ˆˆeØ×Ñ˜e¤V§_¡_Ô5Ø×Ñ˜$Õr"   c                 ó„   — t        | j                  g«      \  }}| j                  |t        «       | j	                  |«       y r   )r   r-   r;   r@   r=   r,   s      r    Útest_multiple_group_listz(GetIdentityTest.test_multiple_group_listF   s4   € Ü" D§J¡J <Ó0‰ˆˆeØ×Ñ˜e¤TÔ*Ø×Ñ˜$Õr"   N)r#   r$   r%   r.   r0   r2   r7   r>   rA   rC   rE   r&   r"   r    r(   r(       s*   „ ò&ò
&ò%ò
?ò
!ò
!ò
 ó
 r"   r(   c                   ó$   — e Zd Zd„ Zd„ Zd„ Zd„ Zy)ÚGetUserObjPermsModelTestc                 óZ   — t        d¬«      }| j                  t        |«      t        «       y ©NÚFoobar)Úname)r   r+   r   r   ©r   Úprojects     r    Útest_for_instancez*GetUserObjPermsModelTest.test_for_instanceO   s%   € Ü˜xÔ(ˆØ×ÑÔ1°'Ó:Ü4õ	6r"   c                 óJ   — | j                  t        t        «      t        «       y r   )r+   r   r   r   r6   s    r    Útest_for_classz'GetUserObjPermsModelTest.test_for_classT   s   € Ø×ÑÔ1´'Ó:Ü4õ	6r"   c                 óJ   — | j                  t        t        «      t        «       y r   )r+   r   r   r   r6   s    r    Útest_defaultz%GetUserObjPermsModelTest.test_defaultX   s   € Ø×ÑÔ1´+Ó>Ü-õ	/r"   c                 óJ   — | j                  t        t        «      t        «       y r   )r+   r   r   r   r6   s    r    Útest_user_modelz(GetUserObjPermsModelTest.test_user_model\   s   € ð 	×ÑÔ1´$Ó7Ü-õ	/r"   N)r#   r$   r%   rN   rP   rR   rT   r&   r"   r    rG   rG   L   s   „ ò6ò
6ò/ó/r"   rG   c                   ó$   — e Zd Zd„ Zd„ Zd„ Zd„ Zy)ÚGetGroupObjPermsModelTestc                 óZ   — t        d¬«      }| j                  t        |«      t        «       y rI   )r   r+   r   r   rL   s     r    rN   z+GetGroupObjPermsModelTest.test_for_instanceg   s%   € Ü˜xÔ(ˆØ×ÑÔ2°7Ó;Ü5õ	7r"   c                 óJ   — | j                  t        t        «      t        «       y r   )r+   r   r   r   r6   s    r    rP   z(GetGroupObjPermsModelTest.test_for_classl   s   € Ø×ÑÔ2´7Ó;Ü5õ	7r"   c                 óJ   — | j                  t        t        «      t        «       y r   )r+   r   r   r   r6   s    r    rR   z&GetGroupObjPermsModelTest.test_defaultp   s   € Ø×ÑÔ2´;Ó?Ü.õ	0r"   c                 óJ   — | j                  t        t        «      t        «       y r   )r+   r   r   r   r6   s    r    Útest_group_modelz*GetGroupObjPermsModelTest.test_group_modelt   s   € ð 	×ÑÔ2´5Ó9Ü.õ	0r"   N)r#   r$   r%   rN   rP   rR   r[   r&   r"   r    rV   rV   d   s   „ ò7ò
7ò0ó0r"   rV   c                   ó   — e Zd Zd„ Zd„ Zy)ÚGetObjPermsModelTestc                 óš   —  G d„ dt         j                  «      } |«       }t        |t        t        «      }| j                  |t        «       y )Nc                   ó2   — e Zd Z ej                  d¬«      Zy)ú8GetObjPermsModelTest.test_image_field.<locals>.SomeModelúimages/©Ú	upload_toN)r#   r$   r%   r   Ú	FileFieldÚimager&   r"   r    Ú	SomeModelr`   €   s   „ Ø$�F×$Ñ$¨yÔ9‰Er"   rf   ©r   ÚModelr   r   r   r+   )r   rf   ÚobjÚ
perm_models       r    Útest_image_fieldz%GetObjPermsModelTest.test_image_field~   s>   € ô	:œŸ™ô 	:ñ ‹kˆÜ(¨Ô.FÜ)=ó?ˆ
à×Ñ˜Ô%9Õ:r"   c                 óš   —  G d„ dt         j                  «      } |«       }t        |t        t        «      }| j                  |t        «       y )Nc                   ó2   — e Zd Z ej                  d¬«      Zy)ú8GetObjPermsModelTest.test_file_field.<locals>.SomeModel2ra   rb   N)r#   r$   r%   r   rd   Úfiler&   r"   r    Ú
SomeModel2rn   Š   s   „ Ø#�6×#Ñ#¨iÔ8‰Dr"   rp   rg   )r   rp   ri   rj   s       r    Útest_file_fieldz$GetObjPermsModelTest.test_file_fieldˆ   s>   € ô	9œŸ™ô 	9ñ ‹lˆÜ(¨Ô.FÜ)=ó?ˆ
à×Ñ˜Ô%9Õ:r"   N)r#   r$   r%   rk   rq   r&   r"   r    r]   r]   |   s   „ ò;ó;r"   r]   N)%Údjango.testr   Údjango.contrib.authr   Ú"django.contrib.contenttypes.modelsr   Údjango.contrib.auth.modelsr   r   Ú	django.dbr   Úguardian.testapp.tests.confr	   Ú guardian.testapp.tests.test_corer
   Úguardian.testapp.modelsr   r   r   Úguardian.modelsr   r   r   Úguardian.utilsr   r   r   r   r   Úguardian.exceptionsr   r   r   r(   rG   rV   r]   r&   r"   r    ú<module>r}      s¢   ðÝ  Ý .Ý :ß ;Ý å 9Ý EÝ +Ý ?Ý @Ý 0Ý 4Ý 1Ý -Ý 'Ý 3Ý 4Ý .Ý /áÓ€ô0˜8ô 0ô) Ð.ô ) ðX ô/˜xó /ó ð/ð. ô0 ó 0ó ð0ô.;˜8õ ;r"   