§
    HŠtj¡  ã                   óv   — d Z ddlmZ ddlZ ej        e¦  «        ZddlmZm	Z
 ddlmZ  G d„ de¦  «        ZdS )ztest passlib.appsé    )Úwith_statementN)ÚappsÚhash)ÚTestCasec                   óT   — e Zd ZdZd„ Zd„ Zd„ Zd„ Zd„ Zd„ Z	d„ Z
d	„ Zd
„ Zd„ Zd„ ZdS )ÚAppsTestz0perform general tests to make sure contexts workc                 óˆ   — t           j        }|                      t          |                     ¦   «         ¦  «        d¦  «         d S )Né2   )r   Úmaster_contextÚassertGreaterÚlenÚschemes)ÚselfÚctxs     úU/var/www/html/CA-Chatbot/venv/lib/python3.11/site-packages/passlib/tests/test_apps.pyÚtest_master_contextzAppsTest.test_master_context   s6   € ÝÔ!ˆØ×Ò�3˜sŸ{š{™}œ}Ñ-Ô-¨rÑ2Ô2Ð2Ð2Ð2ó    c                 óÊ   — t           j        }|                      |                     ¦   «         d¦  «         dD ]+}|                      |                     d|¦  «        ¦  «         Œ,d S )N)Úsha512_cryptÚsha256_crypt)zw$6$rounds=41128$VoQLvDjkaZ6L6BIE$4pt.1Ll1XdDYduEwEYPCMOBiR6W6znsyUEoNlcVXpv2gKKIbQolgmTGe6uEEVJ7azUxuc8Tf7zV9SD2z7Ij751zL$5$rounds=31817$iZGmlyBQ99JSB5n6$p4E.pdPBWx19OajgjLRiOW0itGnyxDGgMlDcOsfaI17Útest)r   Úcustom_app_contextÚassertEqualr   Ú
assertTrueÚverify©r   r   r   s      r   Útest_custom_app_contextz AppsTest.test_custom_app_context   si   € ÝÔ%ˆØ×Ò˜Ÿš™œÐ(HÑIÔIÐIð
ð 	6ð 	6ˆDð �OŠO˜CŸJšJ v¨tÑ4Ô4Ñ5Ô5Ð5Ð5ð	6ð 	6r   c                 ó  — t           j        }dD ]+}|                      |                     d|¦  «        ¦  «         Œ,|                      |                     d¦  «        d¦  «         |                      |                     dd¦  «        ¦  «         d S )N)úMpbkdf2_sha256$29000$ZsgquwnCyBs2$fBxRQpfKd2PIeMxtkKPy0h7SrnrN+EU/cm67aitoZ2s=z3sha1$0d082$cdb462ae8b6be8784ef24b20778c4d0c82d5957fz*md5$b887a$37767f8a745af10612ad44c80ff52e92zcrypt$95a6d$95x74hLDQKXI2Ú 098f6bcd4621d373cade4e832627b4f6r   ú!Údjango_disabled)r   Údjango16_contextr   r   r   ÚidentifyÚassertFalser   s      r   Útest_django16_contextzAppsTest.test_django16_context)   s‹   € ÝÔ#ˆð
ð 	6ð 	6ˆDð �OŠO˜CŸJšJ v¨tÑ4Ô4Ñ5Ô5Ð5Ð5à×Ò˜Ÿš cÑ*Ô*Ð,=Ñ>Ô>Ð>Ø×Ò˜Ÿš F¨CÑ0Ô0Ñ1Ô1Ð1Ð1Ð1r   c                 ó  — t           j        }dD ]+}|                      |                     d|¦  «        ¦  «         Œ,|                      |                     d¦  «        d¦  «         |                      |                     dd¦  «        ¦  «         d S )N)r   r   r!   r"   )r   Údjango_contextr   r   r   r$   r%   r   s      r   Útest_django_contextzAppsTest.test_django_context7   s‹   € ÝÔ!ˆð
ð 	6ð 	6ˆDð �OŠO˜CŸJšJ v¨tÑ4Ô4Ñ5Ô5Ð5Ð5à×Ò˜Ÿš cÑ*Ô*Ð,=Ñ>Ô>Ð>Ø×Ò˜Ÿš F¨CÑ0Ô0Ñ1Ô1Ð1Ð1Ð1r   c                 óÌ   — t           j        }dD ]+}|                      |                     d|¦  «        ¦  «         Œ,|                      |                     d¦  «        d ¦  «         d S )N)ú&{SSHA}cPusOzd6d5n3OjSVK3R329ZGCNyFcC7Fr   r   úS{CRYPT}$5$rounds=31817$iZGmlyBQ99JSB5n6$p4E.pdPBWx19OajgjLRiOW0itGnyxDGgMlDcOsfaI17)r   Úldap_nocrypt_contextr   r   ÚassertIsr$   r   s      r   Útest_ldap_nocrypt_contextz"AppsTest.test_ldap_nocrypt_contextA   s€   € ÝÔ'ˆð
ð 	6ð 	6ˆDð �OŠO˜CŸJšJ v¨tÑ4Ô4Ñ5Ô5Ð5Ð5à�Š�c—l’lð $Añ Bô BØCGñ	Iô 	Ið 	Ið 	Ið 	Ir   c                 óz   — t           j        }dD ]+}|                      |                     d|¦  «        ¦  «         Œ,d S )N)r,   r+   r   r   )r   Úldap_contextr   r   r   s      r   Útest_ldap_contextzAppsTest.test_ldap_contextL   sJ   € ÝÔˆð
ð 	6ð 	6ˆDð �OŠO˜CŸJšJ v¨tÑ4Ô4Ñ5Ô5Ð5Ð5ð	6ð 	6r   c                 óz   — t           j        }dD ]+}|                      |                     d|¦  «        ¦  «         Œ,d S )N)z)*94BDCEBE19083CE2A1F959FD02F964C7AF4CFC29Ú378b243e220ca493r   )r   Úmysql_contextr   r   r   s      r   Útest_ldap_mysql_contextz AppsTest.test_ldap_mysql_contextV   sJ   € ÝÔ ˆð
ð 	6ð 	6ˆDð �OŠO˜CŸJšJ v¨tÑ4Ô4Ñ5Ô5Ð5Ð5ð		6ð 	6r   c                 óx   — t           j        }d}|                      |                     d|d¬¦  «        ¦  «         d S )NÚ#md55d9c68c6c50ed3d02a2fcf54f63993b6r   Úuser)r9   )r   Úpostgres_contextr   r   r   s      r   Útest_postgres_contextzAppsTest.test_postgres_context^   s9   € ÝÔ#ˆØ4ˆØ�Š˜Ÿ
š
 6¨4°f˜
Ñ=Ô=Ñ>Ô>Ð>Ð>Ð>r   c                 ó¶  — t           j        }dD ]+}|                      |                     d|¦  «        ¦  «         Œ,d}t          j                             ¦   «         r€|                      |                     d|¦  «        ¦  «         |                      |                     ¦   «         d¦  «         |                      | 	                    ¦   «         j
        d¦  «         d S |                      |                     |¦  «        d¦  «         |                      |                     ¦   «         d¦  «         |                      | 	                    ¦   «         j
        d¦  «         d S )N)ú"$P$8Ja1vJsKa5qyy/b3mCJGXM7GyBnt6..ú"$H$8b95CoYQnQ9Y6fSTsACyphNh5yoM02.z_cD..aBxeRhYFJvtUvsIr   z<$2a$04$yjDgE74RJkeqC0/1NheSSOrvKeu9IbKDpcQf/Ox3qsrRS/Kw42qISÚbcryptÚphpass)r   Úphpass_contextr   r   Úhashmodr?   Úhas_backendr   Údefault_schemeÚhandlerÚnamer$   )r   r   r   Úh1s       r   Útest_phppass_contextzAppsTest.test_phppass_contextc   s/  € ÝÔ!ˆð
ð 	6ð 	6ˆDð
 �OŠO˜CŸJšJ v¨tÑ4Ô4Ñ5Ô5Ð5Ð5àKˆÝŒ>×%Ò%Ñ'Ô'ð 	;Ø�OŠO˜CŸJšJ v¨rÑ2Ô2Ñ3Ô3Ð3Ø×Ò˜S×/Ò/Ñ1Ô1°8Ñ<Ô<Ð<Ø×Ò˜SŸ[š[™]œ]Ô/°Ñ:Ô:Ð:Ð:Ð:à×Ò˜SŸ\š\¨"Ñ-Ô-¨xÑ8Ô8Ð8Ø×Ò˜S×/Ò/Ñ1Ô1°8Ñ<Ô<Ð<Ø×Ò˜SŸ[š[™]œ]Ô/°Ñ:Ô:Ð:Ð:Ð:r   c                 óð   — t           j        }dD ]+}|                      |                     d|¦  «        ¦  «         Œ,|                      |                     d¦  «                             d¦  «        ¦  «         d S )N)r=   r>   r   z$H$)r   Úphpbb3_contextr   r   r   Ú
startswithr   s      r   Útest_phpbb3_contextzAppsTest.test_phpbb3_contextv   sr   € ÝÔ!ˆð
ð 	6ð 	6ˆDð �OŠO˜CŸJšJ v¨tÑ4Ô4Ñ5Ô5Ð5Ð5Ø�Š˜Ÿš Ñ(Ô(×3Ò3°EÑ:Ô:Ñ;Ô;Ð;Ð;Ð;r   c                 óz   — t           j        }dD ]+}|                      |                     d|¦  «        ¦  «         Œ,d S )N)z?{PBKDF2}9849$JMTYu3eOUSoFYExprVVqbQ$N5.gV.uR1.BTgLSvi0qyPiRlGZ0z-{SHA}a94a8fe5ccb19ba61c4c0873d391e987982fbbd3z{CRYPT}dptOmKDriOGfUz{plaintext}testr   )r   Úroundup_contextr   r   r   s      r   Útest_roundup_contextzAppsTest.test_roundup_context   sJ   € ÝÔ"ˆð
ð 	6ð 	6ˆDð �OŠO˜CŸJšJ v¨tÑ4Ô4Ñ5Ô5Ð5Ð5ð	6ð 	6r   N)Ú__name__Ú
__module__Ú__qualname__Ú__doc__r   r   r&   r)   r/   r2   r6   r;   rH   rL   rO   © r   r   r   r      sÂ   € € € € € Ø:Ð:ð3ð 3ð 3ð	6ð 	6ð 	6ð2ð 2ð 2ð2ð 2ð 2ð	Ið 	Ið 	Ið6ð 6ð 6ð6ð 6ð 6ð?ð ?ð ?ð
;ð ;ð ;ð&<ð <ð <ð6ð 6ð 6ð 6ð 6r   r   )rS   Ú
__future__r   ÚloggingÚ	getLoggerrP   ÚlogÚpasslibr   r   rB   Úpasslib.tests.utilsr   r   rT   r   r   ú<module>r[      s¤   ðØ Ð ð &Ð %Ð %Ð %Ð %Ð %à €€€Ð'�gÔ'¨Ñ1Ô1�ð *Ð )Ð )Ð )Ð )Ð )Ð )Ð )Ø (Ð (Ð (Ð (Ð (Ð (ðv6ð v6ð v6ð v6ð v6ˆxñ v6ô v6ð v6ð v6ð v6r   