ó
    HgÉj’  ã                   ól   • S r SSKrSSKJs  Jr  SSKJr  SSK	r	\" \	R                  5      rS rS rS rg)z>Security headers, selective gzip and the browser crash beacon.é    N)Ú
TestClientc                  ó†  • [         R                  S5      n U R                  S   nSo!U:H  o3(       do  [        R                  " SU4SX45      [        R
                  " U5      [        R
                  " U5      S.-  nSSU0-  n[        [        R                  " U5      5      eS =n=p2S	oR                  S
   o!U;   o3(       do  [        R                  " SU4SX45      [        R
                  " U5      [        R
                  " U5      S.-  nSSU0-  n[        [        R                  " U5      5      eS =n=p2U R                  S   nSo!U:H  o3(       do  [        R                  " SU4SX45      [        R
                  " U5      [        R
                  " U5      S.-  nSSU0-  n[        [        R                  " U5      5      eS =n=p2g )Nú/api/healthzX-Frame-OptionsÚDENY©ú==)z%(py1)s == %(py4)s)Úpy1Úpy4zassert %(py6)sÚpy6zcamera=(self)zPermissions-Policy)Úin)z%(py1)s in %(py4)szX-Content-Type-OptionsÚnosniff)ÚclientÚgetÚheadersÚ
@pytest_arÚ_call_reprcompareÚ	_safereprÚAssertionErrorÚ_format_explanation)ÚrÚ@py_assert0Ú@py_assert3Ú@py_assert2Ú@py_format5Ú@py_format7s         ÚWD:\Ingenieria\TRABAJOS ONLINE\Projects\11- Photo School\backend\tests\test_hardening.pyÚtest_security_headers_presentr   	   s  € Ü�
‰
�=Ó!€AØ�9‰9Ð&Ñ'Ð1¨6Ð1¨6Ñ1×1×1×1Ò1Ð'×1×1Ô1Ð'×1×1Ó1¨6×1×1×1×1×1×1Ó1ØÐ=Ÿi™iÐ(<Ñ=Ð=Ð=Ñ=×=×=×=Ò=ˆ?×=×=Ô=ˆ?×=×=Ó=Ð=×=×=×=×=×=×=Ó=Ø�9‰9Ð-Ñ.Ð;°)Ð;°)Ñ;×;×;×;Ò;Ð.×;×;Ô;Ð.×;×;Ó;°)×;×;×;×;×;×;Ô;ó    c                  ó¼  • [         R                  SSSSS.S9n U R                  nSo!U:H  o3(       dº  [        R                  " SU4S	X45      S
[
        R                  " 5       ;   d  [        R                  " U 5      (       a  [        R                  " U 5      OS
[        R                  " U5      [        R                  " U5      S.-  nSSU0-  n[        [        R                  " U5      5      eS =n=p2[         R                  SSS0S9nUR                  nSo!U:H  o3(       dº  [        R                  " SU4S	X45      S[
        R                  " 5       ;   d  [        R                  " U5      (       a  [        R                  " U5      OS[        R                  " U5      [        R                  " U5      S.-  nSSU0-  n[        [        R                  " U5      5      eS =n=p2g )Nz/api/client-errorÚboomzat XÚ/)ÚmessageÚstackÚurl)ÚjsonéÌ   r   ©z3%(py2)s
{%(py2)s = %(py0)s.status_code
} == %(py5)sÚok©Úpy0Úpy2Úpy5úassert %(py7)sÚpy7r"   ÁX  xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxi¦  Útoo_long)r   ÚpostÚstatus_coder   r   Ú@py_builtinsÚlocalsÚ_should_repr_global_namer   r   r   )r(   Ú@py_assert1Ú@py_assert4r   Ú@py_format6Ú@py_format8r0   s          r   Ú.test_client_error_beacon_accepts_and_validatesr:      s  € Ü	�‰Ð(¸6ÈFÐ[^Ñ/_ˆÐ	`€BØ�>‰>Ð ˜SÐ ˜SÑ × × × Ò ˆ>× × × × × Õ ˆ2× × × Ñ ˆ2× × Õ ˆ>× × Ó ˜S× × × × × × Ó Ü�{‰{Ð.°iÀÐ5Kˆ{ÐL€HØ×ÑÐ& 3Ð& 3Ñ&×&×&×&Ò&Ð×&×&×&×&×&Õ&ˆ8×&×&×&Ñ&ˆ8×&×&Õ&Ð×&×&Ó& 3×&×&×&×&×&×&Ô&r   c                  óÞ  • [         R                  SSS0S9n U R                  nSo!U:H  o3(       dº  [        R                  " SU4SX45      S[
        R                  " 5       ;   d  [        R                  " U 5      (       a  [        R                  " U 5      OS[        R                  " U5      [        R                  " U5      S	.-  nS
SU0-  n[        [        R                  " U5      5      eS =n=p2g )Nr   zAccept-EncodingÚgzip)r   éÈ   r   r'   r   r)   r-   r.   )r   r   r2   r   r   r3   r4   r5   r   r   r   )r   r6   r7   r   r8   r9   s         r   Útest_json_is_gzipped_when_larger>      s‰   € Ü�
‰
�=Ð+<¸fÐ*Eˆ
ÐF€AØ�=‰=Ð˜CÐ˜CÑ×××Òˆ=×××××Õˆ1×××Ñˆ1××Õˆ=××Ó˜C××××××Ôr   )Ú__doc__Úbuiltinsr3   Ú_pytest.assertion.rewriteÚ	assertionÚrewriter   Úfastapi.testclientr   ÚmainÚappr   r   r:   r>   © r   r   Ú<module>rH      s0   ðÙ Dß  „ Õ )ã á	�D—H‘HÓ	€ò<ò'ó r   