
     h                     r    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y)ztest passlib.apps    )with_statementN)appshash)TestCasec                   R    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y)AppsTestz0perform general tests to make sure contexts workc                 v    t         j                  }| j                  t        |j	                               d       y )N2   )r   master_contextassertGreaterlenschemes)selfctxs     Y/var/www/html/Resume-Scraper/venv/lib/python3.12/site-packages/passlib/tests/test_apps.pytest_master_contextzAppsTest.test_master_context   s(    !!3s{{}-r2    c                     t         j                  }| j                  |j                         d       dD ]#  }| j	                  |j                  d|             % y )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   sN    %%(HI
 	6D OOCJJvt45	6r   c                     t         j                  }dD ]#  }| j                  |j                  d|             % | j	                  |j                  d      d       | j                  |j                  dd             y )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)   sl    ##
 	6D OOCJJvt45	6 	c*,=>FC01r   c                     t         j                  }dD ]#  }| j                  |j                  d|             % | j	                  |j                  d      d       | j                  |j                  dd             y )N)r   r   r!   r"   )r   django_contextr   r   r   r$   r%   r   s      r   test_django_contextzAppsTest.test_django_context7   sl    !!
 	6D OOCJJvt45	6
 	c*,=>FC01r   c                     t         j                  }dD ]#  }| j                  |j                  d|             % | j	                  |j                  d      d        y )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[    ''
 	6D OOCJJvt45		6 	cll $A BCG	Ir   c                 t    t         j                  }dD ]#  }| j                  |j                  d|             % y )N)r,   r+   r   r   )r   ldap_contextr   r   r   s      r   test_ldap_contextzAppsTest.test_ldap_contextL   s7    
 	6D OOCJJvt45	6r   c                 t    t         j                  }dD ]#  }| j                  |j                  d|             % y )N)z)*94BDCEBE19083CE2A1F959FD02F964C7AF4CFC29378b243e220ca493r   )r   mysql_contextr   r   r   s      r   test_ldap_mysql_contextz AppsTest.test_ldap_mysql_contextV   s7      
 	6D OOCJJvt45		6r   c                 n    t         j                  }d}| j                  |j                  d|d             y )N#md55d9c68c6c50ed3d02a2fcf54f63993b6r   user)r9   )r   postgres_contextr   r   r   s      r   test_postgres_contextzAppsTest.test_postgres_context^   s-    ##4

64f
=>r   c                 b   t         j                  }dD ]#  }| j                  |j                  d|             % d}t        j
                  j                         rl| j                  |j                  d|             | j                  |j                         d       | j                  |j                         j                  d       y | j                  |j                  |      d       | j                  |j                         d       | j                  |j                         j                  d       y )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    !!
 	6D
 OOCJJvt45	6 L>>%%'OOCJJvr23S//18<S[[]//:S\\"-x8S//18<S[[]//:r   c                     t         j                  }dD ]#  }| j                  |j                  d|             % | j                  |j	                  d      j                  d             y )N)r=   r>   r   z$H$)r   phpbb3_contextr   r   r   
startswithr   s      r   test_phpbb3_contextzAppsTest.test_phpbb3_contextv   sY    !!
 	6D OOCJJvt45		6
 	(33E:;r   c                 t    t         j                  }dD ]#  }| j                  |j                  d|             % y )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   s7    ""
 	6D OOCJJvt45	6r   N)__name__
__module____qualname____doc__r   r   r&   r)   r/   r2   r6   r;   rH   rL   rO    r   r   r   r      s=    :3	622	I66?
;&<6r   r   )rS   
__future__r   logging	getLoggerrP   logpasslibr   r   rB   passlib.tests.utilsr   r   rT   r   r   <module>r[      s8     & 'g''1 * (v6x v6r   