§
    öyIf‰  ã                   ó4  — d Z ddlmZ ddlZddlmZ ddlmZ ddlmZ ddlm	Z	 ddl
mZ dd	lmZ dd
lmZ ddlZ eee                  ¦   «         Zdeddfd„Z ej        d¬¦  «        deddfd„¦   «         Zdeddfd„Zdeeef         defd„Zdeddfd„ZdS )zASubmit failure or test session information to a pastebin service.é    )ÚStringION)ÚIO)ÚUnion)ÚConfig)Úcreate_terminal_writer)ÚParser)ÚStashKey)ÚTerminalReporterÚparserÚreturnc           	      ól   — |                       d¦  «        }|                     ddddd ddgd¬	¦  «         d S )
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)r   Úgroups     úD/var/www/piapp/venv/lib/python3.11/site-packages/_pytest/pastebin.pyÚpytest_addoptionr      sU   € Ø�OŠOÐ0Ñ1Ô1€EØ	×ÒØØØØØØ˜5Ð!ØBð ñ ô ð ð ð ó    T)ÚtrylastÚconfigc                 óè   ‡ ‡— ‰ j         j        dk    r]‰ j                             d¦  «        }|�Ct	          j        d¦  «        ‰ j        t          <   |j        j	        Šˆ ˆfd„}||j        _	        d S d S d S )Nr   Úterminalreporterzw+bc                 ó¸   •—  ‰| fi |¤Ž t          | t          ¦  «        r|                      d¦  «        } ‰j        t                                        | ¦  «         d S )Núutf-8)Ú
isinstanceÚstrÚencodeÚstashÚpastebinfile_keyÚwrite)ÚsÚkwargsr    Úoldwrites     €€r   Ú	tee_writez#pytest_configure.<locals>.tee_write-   s`   ø€ Ø�˜Ð%Ð%˜fÐ%Ð%Ð%Ý˜a¥Ñ%Ô%ð *ØŸš Ñ)Ô)�AØ”Õ-Ô.×4Ò4°QÑ7Ô7Ð7Ð7Ð7r   )
Úoptionr   ÚpluginmanagerÚ	getpluginÚtempfileÚTemporaryFiler(   r)   Ú_twr*   )r    Útrr.   r-   s   `  @r   Úpytest_configurer6   !   s�   øø€ à„}Ô Ò&Ð&ØÔ!×+Ò+Ð,>Ñ?Ô?ˆð ˆ>å-5Ô-CÀEÑ-JÔ-JˆFŒLÕ)Ñ*Ø”v”|ˆHð8ð 8ð 8ð 8ð 8ð 8ð %ˆBŒFŒLˆLˆLð! 'Ð&ð
 ˆ>r   c                 ó¦  — t           | j        v rÂ| j        t                    }|                     d¦  «         |                     ¦   «         }|                     ¦   «          | j        t           = | j                             d¦  «        }|j        j        d= | 	                    dd¦  «         t          |¦  «        }|                     d|z  ¦  «         d S d S )Nr   r"   r*   ú=ú$Sending information to Paste Servicezpastebin session-log: %s
)r)   r(   ÚseekÚreadÚcloser0   r1   r4   Ú__dict__Ú	write_sepÚcreate_new_pasteÚ
write_line)r    ÚpastebinfileÚ
sessionlogr5   Úpastebinurls        r   Úpytest_unconfigurerD   6   sÉ   € Ý˜6œ<Ð'Ð'Ø”|Õ$4Ô5ˆà×Ò˜!ÑÔÐØ!×&Ò&Ñ(Ô(ˆ
Ø×ÒÑÔÐØŒLÕ)Ð*àÔ!×+Ò+Ð,>Ñ?Ô?ˆØŒFŒO˜GÐ$à
�Š�SÐ@ÑAÔAÐAÝ& zÑ2Ô2ˆØ
�ŠÐ2°[Ñ@ÑAÔAÐAÐAÐAð (Ð'r   Úcontentsc                 ó~  — ddl }ddlm} ddlm} | dddœ}d}	  || ||¦  «                             d	¦  «        ¬
¦  «                             ¦   «                              d¦  «        }n# t          $ r}d|z  cY d}~S d}~ww xY w| 	                    d|¦  «        }|r|› d| 
                    d¦  «        › �S d|z   dz   S )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)Ú	urlencode)ÚurlopenÚtextÚ1week)ÚcodeÚlexerÚexpiryzhttps://bpa.stÚascii)Údatar$   zbad response: %szhref="/raw/(\w+)"z/show/é   zbad response: invalid format ('z'))ÚreÚurllib.parserG   Úurllib.requestrH   r'   r;   ÚdecodeÚOSErrorÚsearchr   )	rE   rQ   rG   rH   ÚparamsÚurlÚresponseÚexc_infoÚms	            r   r?   r?   G   s  € ð €I€I€IØ&Ð&Ð&Ð&Ð&Ð&Ø&Ð&Ð&Ð&Ð&Ð&à¨¸7ÐCÐC€FØ
€Cð-àˆG�C˜i˜i¨Ñ/Ô/×6Ò6°wÑ?Ô?Ð@Ñ@Ô@×EÒEÑGÔG×NÒNÈwÑWÔWð 	ˆøõ ð -ð -ð -Ø! HÑ,Ð,Ð,Ð,Ð,Ð,Ð,øøøøð-øøøà
�	Š	Ð&¨Ñ1Ô1€AØð CØÐ)Ð)˜QŸWšW Q™ZœZÐ)Ð)Ð)à0°8Ñ;¸dÑBÐBs   šAA) Á)
BÁ3A=Á7BÁ=Br"   c                 ó(  — | j         j        j        dk    rd S d| j        v rï|                      dd¦  «         | j        d         D ]Í}	 |j        j        j        d         j        }n%# t          $ r |  
                    |¦  «        }Y nw xY wt          ¦   «         }t          | j         |¦  «        }|                     |¦  «         |                     ¦   «         }t          |¦  «        sJ ‚t!          |¦  «        }|                      |› d|› �¦  «         ŒÌd S d S )Nr   r8   r9   éÿÿÿÿz --> )r    r/   r   Ústatsr>   ÚlongreprÚreprtracebackÚreprentriesÚreprfilelocÚAttributeErrorÚ_getfailureheadliner   r   Ú
toterminalÚgetvalueÚlenr?   r@   )r"   ÚrepÚmsgÚfileÚtwr+   rC   s          r   Úpytest_terminal_summaryrl   `   s=  € ØÔÔ%Ô.°(Ò:Ð:ØˆØÐ#Ô)Ð)Ð)Ø×"Ò" 3Ð(NÑOÔOÐOØ#Ô)¨(Ô3ð 	Dð 	DˆCð@Ø”lÔ0Ô<¸RÔ@ÔL��øÝ!ð @ð @ð @Ø&×:Ò:¸3Ñ?Ô?���ð@øøøå‘:”:ˆDÝ'Ð(8Ô(?ÀÑFÔFˆBØ�NŠN˜2ÑÔÐØ—’‘”ˆAÝ�q‘6”6ˆMˆMˆMÝ*¨1Ñ-Ô-ˆKØ×'Ò'¨3Ð(BÐ(B°[Ð(BÐ(BÑCÔCÐCÐCð *Ð)ð	Dð 	Ds   ÁA$Á$BÂB)Ú__doc__Úior   r2   Útypingr   r   Ú_pytest.configr   r   Ú_pytest.config.argparsingr   Ú_pytest.stashr	   Ú_pytest.terminalr
   ÚpytestÚbytesr)   r   Úhookimplr6   rD   r&   r?   rl   © r   r   ú<module>rx      s´  ðà GÐ Gà Ð Ð Ð Ð Ð Ø €€€Ø Ð Ð Ð Ð Ð Ø Ð Ð Ð Ð Ð à !Ð !Ð !Ð !Ð !Ð !Ø 1Ð 1Ð 1Ð 1Ð 1Ð 1Ø ,Ð ,Ð ,Ð ,Ð ,Ð ,Ø "Ð "Ð "Ð "Ð "Ð "Ø -Ð -Ð -Ð -Ð -Ð -Ø €€€ð '�8˜B˜uœIÔ&Ñ(Ô(Ð ð
˜Vð 
¨ð 
ð 
ð 
ð 
ð €„˜ÐÑÔð%˜Vð %¨ð %ð %ð %ñ Ôð%ð(B˜vð B¨$ð Bð Bð Bð Bð"C˜u S¨% ZÔ0ð C°Sð Cð Cð Cð Cð2DÐ.>ð DÀ4ð Dð Dð Dð Dð Dð Dr   