Files
hms-licht-ton/backend/tests/__pycache__/test_admin_auth.cpython-313-pytest-9.1.1.pyc
T

71 lines
14 KiB
Plaintext
Raw Normal View History

С
фчNj╟
ЦСr∙SrSSKrSSKJs Jr SSKrSSKJ r J
r
J r J r Sr
SrSrSr\R"R$S5r\R"R$S 5r\R"R$S
5r\R"R$S 5r\R"R$S 5rg)
z%Tests for admin authentication (T04).ИN)зcreate_access_tokenз verify_tokenзget_password_hashзverify_passwordcСX∙Sn[U5nX:go"(dш[R"SU4SX45S[R"5;d[R
"U5(a[R "U5OSS[R"5;d[R
"U5(a[R "U5OSS.-nSSU0-n[[R"U55eSn[X5nS oeULow(GdX[R"S
U4S XV45S [R"5;d[R
"[5(a[R "[5OS S[R"5;d[R
"U5(a[R "U5OSS[R"5;d[R
"U5(a[R "U5OS[R "U5[R "U5S
.-nSSU0-n [[R"U 55eS=n=pvSn[X!5n
So╨U Lof(Gd"[R"S
U4SX╚45S [R"5;d[R
"[5(a[R "[5OS [R "U5S[R"5;d[R
"U5(a[R "U5OS[R "U
5[R "U 5S.-n SSU 0-n
[[R"U
55eS=n=n
=pkg)Nзmysecret)З!=)z%(py0)s != %(py2)sзhashedзplain)зpy0зpy2zassert %(py4)sзpy4T╘зis)z9%(py4)s
{%(py4)s = %(py0)s(%(py1)s, %(py2)s)
} is %(py7)sr)r зpy1r
rзpy7zassert %(py9)sзpy9зwrongF)z9%(py5)s
{%(py5)s = %(py0)s(%(py2)s, %(py3)s)
} is %(py8)s)r r
зpy3зpy5зpy8zassert %(py10)sзpy10)
rз
@pytest_arз_call_reprcompareз @py_builtinsзlocalsз_should_repr_global_nameз _safereprзAssertionErrorз_format_explanationr)r r
з @py_assert1з @py_format3з @py_format5з @py_assert3з @py_assert6з @py_assert5з @py_format8з @py_format10з @py_assert4з @py_assert7з @py_format9з @py_format11s зB/a0/usr/workdir/hms-licht-ton-t04/backend/tests/test_admin_auth.pyзtest_password_hash_and_verifyr.sв─ь ─Eэ
≤uс
%─Fь ┴?вввр┬6ввввву┬6вввя┬6вввввж░Uвввя░Uвввввврэ ≤5с )п1╗Tп1╗Tп 1в1в1в1с1п )в1в1в1в1в1у1▄?в1в1в1я1▄?в1в1в1в1в1ж1≤5в1в1в1я1≤5в1в1в1в1в1ж1═&в1в1в1я1═&в1в1у1п )в1в1с1╗Tв1в1в1в1в1в1с1ь"п4▄?≤7с +п4╗uп4╗uп 4в4в4в4с4п +в4в4в4в4в4у4▄?в4в4в4я4▄?в4в4у4≤7в4в4в4в4в4т4═Fв4в4в4я4═Fв4в4у4п +в4в4с4╗uв4в4в4в4в4в4ж4СcС
∙[SS05nSoULo"(d╔[R"SU4SX45S[R"5;d[R
"U5(a[R "U5OS[R "U5S.-nSSU0-n[[R"U55eS=p![U5nSoULo"(d╔[R"SU4SXQ45S [R"5;d[R
"U5(a[R "U5OS [R "U5S.-nSSU0-n[[R"U55eS=p!USnSovU:Ho(do[R"S
U4S Xg45[R "U5[R "U5S .-nS
SU0-n [[R"U 55eS=n=pg)Nзsubзadmin)Зis not)z%(py0)s is not %(py3)sзtoken╘r rЗassert %(py5)srзpayload╘З==╘z%(py1)s == %(py4)s╘rrЗassert %(py6)sзpy6)
rrrrrrrrr r)
r4з @py_assert2r!з @py_format4з @py_format6r7з @py_assert0r$r#з @py_format7s
r-зtest_create_and_verify_tokenrCs─э ═╗п 0с 1─Eьп≤п вввр┬5ввввву┬5вввя┬5вву≤ввввввяэ≤5с!─Gьп≤$п вввр┬7ввввву┬7вввя┬7вву≤$ввввввяь ░5┴>п$≤Wп$≤Wя $в$в$в$р$┬>в$в$т$┬>в$в$с$≤Wв$в$в$в$в$в$т$r/cС─∙[S5nSoULo"(d╔[R"SU4SX45S[R"5;d[R
"U5(a[R "U5OS[R "U5S.-nSSU0-n[[R"U55eS=p!g)Nzinvalid.token.herer╘z%(py0)s is %(py3)sr7r5r6r) rrrrrrrrr )r7r>r!r?r@s r-зtest_verify_invalid_tokenrFsg─эп/с0─Gьп░d┬?вввр┬7ввввву┬7вввя┬7вву░dвввввврr/cС╛∙SSKJn [SS0U"SS9S9n[U5nSo2ULoD(d╔[R
"SU4S X#45S
[ R"5;d[R"U5(a[R"U5OS
[R"U5S .-nS S
U0-n[[R"U55eS=pCg)Nr)з timedeltar1r2ИЪЪЪЪ)зseconds)з
expires_deltarrEr7r5r6r) зdatetimerHrrrrrrrrrr )rHr4r7r>r!r?r@s r-зtest_verify_expired_tokenrMs──щ"э ═╗п 0а пRTя@Uя V─Eэ≤5с!─Gьп░d┬?вввр┬7ввввву┬7вввя┬7вву░dвввввврr/c┐С4# ∙URSSSS.S9IShv∙N nURnSoCU:HoU(d╨[R"SU4S X445S
[R
"5;d[R "U5(a[R"U5OS
[R"U5[R"U5S .-nS S
U0-n[[R"U55eS=n=pTUR5nSo≥U;o╙(d╔[R"SU
4SX≤45[R"U 5S[R
"5;d[R "U5(a[R"U5OSS.-n SSU 0-n[[R"U55eS=p USn SoYU:Ho╙(do[R"SU
4SX∙45[R"U 5[R"U5S.-n SSU 0-n
[[R"U
55eS=n =p╔So▓RoIU;o╙(d╨[R"SU
4SX■45[R"U 5S
[R
"5;d[R "U5(a[R"U5OS
[R"U5S.-nS S
U0-n[[R"U55eS=n =p╓gGNЭ7f)zDPOST /api/admin/login with valid credentials returns 200 with token.З/api/admin/loginr2з testpassword╘зusernameзpassword╘зjsonNИхr8╘z3%(py2)s
{%(py2)s = %(py0)s.status_code
} == %(py5)sзresp╘r r
rЗassert %(py7)srз access_token)зin)z%(py1)s in %(py3)sзdata)rrr6rз
token_typeзbearerr:r;r<r=зhms_admin_token)z/%(py1)s in %(py5)s
{%(py5)s = %(py3)s.cookies
})rrr) зpostз status_coderrrrrrrr rUзcookies)зclientз seeded_adminrXr!r)r$r@r'r]rAr>r?r#rBs r-зtest_login_successrf"sиИ─П≈▒п/ьь"Я7░ПВ ─DП в я п"≤sп"≤sя "в"в"в"р"п в"в"в"в"в"у"┬4в"в"в"я"┬4в"в"у"п в"в"с"≤sв"в"в"в"в"в"с"ь ▐9┴9▀;─Dь п!≤Tя !в!в!в!р!┬>в!в!т!┬>в!в!в!в!в!т!≤Tв!в!в!я!≤Tв!в!в!в!в!в!с!ь ░ я п)═п)═я )в)в)в)р)п в)в)т)п в)в)с)═в)в)в)в)в)в)с)ь п,╖ ║ п,═ я ,в,в,в,р,п в,в,т,п в,в,в,в,в,т,═в,в,в,я,═в,в,у,═ в,в,в,в,в,в,т,Р Ыs┌L≥L K<Lc┐СТ# ∙URSSSS.S9IShv∙N nURnSoCU:HoU(d╨[R"SU4S X445S
[R
"5;d[R "U5(a[R"U5OS
[R"U5[R"U5S .-nS S