ó
    ùÞ j¹  ã                  óö   • S r SSKJr  SSKJr  SSKrSSKJr  SSKJ	r	  SSKJ
r
  SSKJr  SS	KJr  SS
KJr  SSKJr  SSKr\\\      " 5       rSS jr\R.                  " SS9SS j5       rSS jrSS jrSS jrg)zASubmit failure or test session information to a pastebin service.é    )Úannotations)ÚStringION)ÚIO)ÚConfig)Úcreate_terminal_writer)ÚParser)ÚPASTEBIN)ÚStashKey)ÚTerminalReporterc           
     óT   • U R                  S5      nUR                  SSSSS SS/SS	9  g )
Nzterminal reportingz
--pastebinÚmodeÚstoreÚpastebinÚfailedÚallz3Send failed|all info to bpaste.net pastebin service)ÚmetavarÚactionÚdestÚdefaultÚchoicesÚhelp)ÚgetgroupÚ	addoption)ÚparserÚgroups     ÚJ/var/www/html/gaurav/venv/lib/python3.13/site-packages/_pytest/pastebin.pyÚpytest_addoptionr      s<   € Ø�O‰OÐ0Ó1€EØ	‡O�OØØØØØØ˜5Ð!ØBð ò ó    T)Útrylastc                ó†  ^ ^• T R                   R                  (       a  T R                  [        S5        T R                   R                  S:X  at  T R                  R                  S5      nUbU  [        R                  " S5      T R                  [        '   UR                  R                  mU U4S jnX!R                  l        g g g )Né   r   Úterminalreporterzw+bc                ó¨   >• T" U 40 UD6  [        U [        5      (       a  U R                  S5      n TR                  [           R                  U 5        g )Núutf-8)Ú
isinstanceÚstrÚencodeÚstashÚpastebinfile_keyÚwrite)ÚsÚkwargsÚconfigÚoldwrites     €€r   Ú	tee_writeÚ#pytest_configure.<locals>.tee_write2   sC   ø€ Ù˜Ñ%˜fÒ%Ü˜a¤×%Ñ%ØŸ™ Ó)�AØ—‘Ô-Ñ.×4Ñ4°QÕ7r   )Úoptionr   Úissue_config_time_warningr	   ÚpluginmanagerÚ	getpluginÚtempfileÚTemporaryFiler(   r)   Ú_twr*   )r-   Útrr/   r.   s   `  @r   Úpytest_configurer9   #   s‘   ù€ à‡}�}××Ø×(Ñ(¬°1Ô5à‡}�}×Ñ Ó&Ø×!Ñ!×+Ñ+Ð,>Ó?ˆð ‰>ä-5×-CÒ-CÀEÓ-JˆF�L‰LÔ)Ñ*Ø—v‘v—|‘|ˆHö8ð %�F‰F�Lð ð 'r   c                ó   • [         U R                  ;   aº  U R                  [            nUR                  S5        UR                  5       nUR	                  5         U R                  [         	 U R
                  R                  S5      nUR                  R                  S	 UR                  SS5        [        U5      nUR                  SU S35        g g )Nr   r"   r*   Ú=ú$Sending information to Paste Servicezpastebin session-log: Ú
)r)   r(   ÚseekÚreadÚcloser3   r4   r7   Ú__dict__Ú	write_sepÚcreate_new_pasteÚ
write_line)r-   ÚpastebinfileÚ
sessionlogr8   Úpastebinurls        r   Úpytest_unconfigurerH   ;   s­   € Ü˜6Ÿ<™<Ó'Ø—|‘|Ô$4Ñ5ˆà×Ñ˜!ÔØ!×&Ñ&Ó(ˆ
Ø×ÑÔØ�L‰LÔ)Ð*à×!Ñ!×+Ñ+Ð,>Ó?ˆØ�F‰F�O‰O˜GÐ$à
�‰�SÐ@ÔAÜ& zÓ2ˆØ
�‰Ð.¨{¨m¸2Ð>Õ?ð (r   c                ó¾  • SSK nSSKJn  SSKJn  SSKJn  U SSS.nS	n U" Xc" U5      R                  S
5      S9R                  5       R                  S5      nUR                  SW5      n	U	(       a  U SU	R                  S5       3$ SU-   S-   $ ! U a0  nU   SU 3sSSS5        s SnA$ ! , (       d  f        SnANe= fSnAf[         a  nSU 3s SnA$ SnAff = f)z�Create a new paste using the bpaste.net service.

:contents: Paste contents string.
:returns: URL to the pasted contents, or an error message.
r   N)Ú	HTTPError)Ú	urlencode)ÚurlopenÚtextÚ1week)ÚcodeÚlexerÚexpiryzhttps://bpa.stÚascii)Údatar$   zbad response: zhref="/raw/(\w+)"z/show/é   zbad response: invalid format ('z'))ÚreÚurllib.errorrJ   Úurllib.parserK   Úurllib.requestrL   r'   r?   ÚdecodeÚOSErrorÚsearchr   )
ÚcontentsrU   rJ   rK   rL   ÚparamsÚurlÚresponseÚeÚms
             r   rC   rC   L   sÚ   € ó Ý&Ý&Ý&à¨¸7ÑC€FØ
€Cð$á�C˜i¨Ó/×6Ñ6°wÓ?Ñ@×EÑEÓG×NÑNÈwÓWð 	ð 	�	‰	Ð&¨Ó1€AÞØ��f˜QŸW™W Q›Z˜LÐ)Ð)à0°8Ñ;¸dÑBÐBøð ó (ÚØ# A 3Ð'÷ �Q�Q�QˆQþäó $Ø ˜sÐ#Õ#ûð$úsM    8B ÂCÂC ÂB+Â	C Â%CÂ+
B=	Â5C Â=C Ã CÃCÃCÃCc                óF  • U R                   R                  R                  S:w  a  g SU R                  ;   aË  U R	                  SS5        U R                  S    H¥  n UR
                  R                  R                  S   R                  n[        5       n[        U R                   U5      nUR                  U5        UR                  5       n[        U5      (       d   e[!        U5      nU R#                  U SU 35        M§     g g ! [         a    U R                  U5      n N—f = f)Nr   r;   r<   éÿÿÿÿz --> )r-   r1   r   ÚstatsrB   ÚlongreprÚreprtracebackÚreprentriesÚreprfilelocÚAttributeErrorÚ_getfailureheadliner   r   Ú
toterminalÚgetvalueÚlenrC   rD   )r"   ÚrepÚmsgÚfileÚtwr+   rG   s          r   Úpytest_terminal_summaryrr   i   s  € Ø×Ñ×%Ñ%×.Ñ.°(Ó:ØØÐ#×)Ñ)Ó)Ø×"Ñ" 3Ð(NÔOØ#×)Ñ)¨(Ô3ˆCð@Ø—l‘l×0Ñ0×<Ñ<¸RÑ@×LÑL�ô “:ˆDÜ'Ð(8×(?Ñ(?ÀÓFˆBØ�N‰N˜2ÔØ—‘“ˆAÜ�q—6‘6ˆM�6Ü*¨1Ó-ˆKØ×'Ñ'¨3¨%¨u°[°MÐ(BÖCò 4ð *øô
 "ó @Ø&×:Ñ:¸3Ó?’ð@ús   Á-DÄD ÄD )r   r   ÚreturnÚNone)r-   r   rs   rt   )r\   zstr | bytesrs   r&   )r"   r   rs   rt   )Ú__doc__Ú
__future__r   Úior   r5   Útypingr   Ú_pytest.configr   r   Ú_pytest.config.argparsingr   Ú_pytest.deprecatedr	   Ú_pytest.stashr
   Ú_pytest.terminalr   ÚpytestÚbytesr)   r   Úhookimplr9   rH   rC   rr   © r   r   Ú<module>r‚      sq   ðá Gå "å Û Ý å !Ý 1Ý ,Ý 'Ý "Ý -Û ð ˜B˜u™IÒ&Ó(Ð ô
ð ‡‚˜Ñó%ó ð%ô.@ô"Cõ:Dr   