§
    öyIf#"  ã                   óœ  — d Z ddlmZ ddl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mZ ddlmZ ddlZ G d„ de¦  «        Zdeddfd„Z ej        d¬¦  «        dedeef         fd„¦   «         Zdeddfd„Zdedee	eef                  fd„Zdeddfd„ZdgZdedee         fd„Zdedee         fd„ZdS )z3Version info, help messages, tracing configuration.é    )ÚActionN)Ú	Generator)ÚList)ÚOptional)ÚUnion)ÚConfig)ÚExitCode)Ú	PrintHelp)ÚParser)ÚTerminalReporterc                   ó,   ‡ — e Zd ZdZdˆ fd„	Zdd„Zˆ xZS )Ú
HelpActiona}  An argparse Action that will raise an exception in order to skip the
    rest of the argument parsing when --help is passed.

    This prevents argparse from quitting due to missing required arguments
    when any are defined, for example by ``pytest_addoption``.
    This is similar to the way that the builtin argparse --help option is
    implemented by raising SystemExit.
    NFc                 óV   •— t          ¦   «                              ||d|d|¬¦  «         d S )NTr   )Úoption_stringsÚdestÚconstÚdefaultÚnargsÚhelp)ÚsuperÚ__init__)Úselfr   r   r   r   Ú	__class__s        €úF/var/www/piapp/venv/lib/python3.11/site-packages/_pytest/helpconfig.pyr   zHelpAction.__init__   s@   ø€ Ý‰Œ×ÒØ)ØØØØØð 	ñ 	
ô 	
ð 	
ð 	
ð 	
ó    c                 óv   — t          || j        | j        ¦  «         t          |j        dd¦  «        rt
          ‚d S )NÚafter_preparseF)Úsetattrr   r   ÚgetattrÚ_parserr
   )r   ÚparserÚ	namespaceÚvaluesÚoption_strings        r   Ú__call__zHelpAction.__call__(   s@   € Ý�	˜4œ9 d¤jÑ1Ô1Ð1õ �6”>Ð#3°UÑ;Ô;ð 	ÝˆOð	ð 	r   )NFN)N)Ú__name__Ú
__module__Ú__qualname__Ú__doc__r   r%   Ú__classcell__)r   s   @r   r   r      s[   ø€ € € € € ðð ð
ð 
ð 
ð 
ð 
ð 
ðð ð ð ð ð ð ð r   r   r!   Úreturnc           	      óz  — |                       d¦  «        }|                     dddddd¬¦  «         |                     d	d
t          dd¬¦  «         |                     dddg dd¬¦  «         |                     ddddd¬¦  «         |                     ddddddd ¬!¦  «         |                     d"d#d$dd%¬&¦  «         d S )'NÚdebugconfigz	--versionz-VÚcountr   ÚversionzoDisplay pytest version and information about plugins. When given twice, also display information about plugins.)Úactionr   r   r   z-hz--helpr   z(Show help message and configuration info)r0   r   r   z-pÚappendÚpluginsÚnamez‰Early-load given plugin module name or entry point (multi-allowed). To avoid loading of plugins, use the `no:` prefix, e.g. `no:doctest`.)r0   r   r   Úmetavarr   z--traceconfigz--trace-configÚ
store_trueFz)Trace considerations of conftest.py files)r0   r   r   z--debugÚstoreú?zpytestdebug.logÚdebugÚDEBUG_FILE_NAMEzšStore internal tracing debug information in this log file. This file is opened with 'w' and truncated as a result, care advised. Default: pytestdebug.log.)r0   r   r   r   r4   r   z-oz--override-iniÚoverride_iniz^Override ini option with "option=value" style, e.g. `-o xfail_strict=True -o cache_dir=cache`.)r   r0   r   )ÚgetgroupÚ	addoptionÚ
_addoptionr   )r!   Úgroups     r   Úpytest_addoptionr?   0   s>  € Ø�OŠO˜MÑ*Ô*€EØ	‡O‚OØØØØØðDð ñ ô ð ð 
×ÒØØÝØØ7ð ñ ô ð ð 
×ÒØØØØØðð ñ 	ô 	ð 	ð 
‡O‚OØØØØØ8ð ñ ô ð ð 
‡O‚OØØØØØØ!ð$ð ñ 
ô 
ð 
ð 
×ÒØØØØð:ð ñ ô ð ð ð r   T)Úwrapperc               #   ó|  ‡‡‡K  — d V —Š‰j         j        �r%‰j         j        } t          | dd¬¦  «        Š‰                     d                     t
          j        d                     t          t          t          j        ¦  «        ¦  «        ‰j        j        t          j        ¦   «         ‰j        j        ¦  «        ¦  «         ‰j        j                             ‰j        ¦  «         ‰j                             ¦   «         Št          j                             d| z  ¦  «         d	ˆˆˆfd„}‰                     |¦  «         ‰S )
NÚwzutf-8)Úencodingz@versions pytest-{}, python-{}
invocation_dir={}
cwd={}
args={}

ú.z'writing pytest debug information to %s
r+   c                  óÐ   •— ‰                      ¦   «          t          j                             d‰j        z  ¦  «         ‰ j        j                             d ¦  «          ‰¦   «          d S )Nz%wrote pytest debug information to %s
)ÚcloseÚsysÚstderrÚwriter3   ÚtraceÚrootÚ	setwriter)ÚconfigÚ	debugfileÚundo_tracings   €€€r   Úunset_tracingz+pytest_cmdline_parse.<locals>.unset_tracing~   sY   ø€ Ø�OŠOÑÔÐÝŒJ×ÒÐEÈ	ÌÑVÑWÔWÐWØŒLÔ×'Ò'¨Ñ-Ô-Ð-ØˆL‰NŒNˆNˆNˆNr   )r+   N)Úoptionr8   ÚopenrI   ÚformatÚpytestÚ__version__ÚjoinÚmapÚstrrG   Úversion_infoÚinvocation_paramsÚdirÚosÚgetcwdÚargsrJ   rK   rL   ÚpluginmanagerÚenable_tracingrH   Úadd_cleanup)ÚpathrP   rM   rN   rO   s     @@@r   Úpytest_cmdline_parserc   h   s7  øøøè è € àˆUˆU€Fà„}Ôñ *àŒ}Ô"ˆÝ˜˜s¨WÐ5Ñ5Ô5ˆ	Ø�Šð@ß@FÂÝÔ"Ø—’��S¥#Ô"2Ñ3Ô3Ñ4Ô4ØÔ(Ô,Ý”	‘”ØÔ(Ô-ñAô Añ		
ô 		
ð 		
ð 	ŒÔ×#Ò# I¤OÑ4Ô4Ð4ØÔ+×:Ò:Ñ<Ô<ˆÝŒ
×ÒÐCÀdÑJÑKÔKÐKð	ð 	ð 	ð 	ð 	ð 	ð 	ð 	ð 	×Ò˜=Ñ)Ô)Ð)à€Mr   rM   c                 ól  — | j         j        dk    rvt          j                             dt
          j        › dt
          j        › d�¦  «         t          | ¦  «        }|r'|D ]&}t          j                             |dz   ¦  «         Œ%d S d S t          j                             dt
          j        › d�¦  «         d S )Né   zThis is pytest version z, imported from ú
zpytest )	rQ   r/   rG   ÚstdoutrI   rT   rU   Ú__file__Úgetpluginversioninfo)rM   Ú
plugininfoÚlines      r   Úshowversionrl   ‰   sË   € Ø„}Ô˜qÒ Ð ÝŒ
×ÒØ]¥fÔ&8Ð]Ð]Í&Ì/Ð]Ð]Ð]ñ	
ô 	
ð 	
õ *¨&Ñ1Ô1ˆ
Øð 	.Ø"ð .ð .�Ý”
× Ò  ¨¡Ñ-Ô-Ð-Ð-ð	.ð 	.ð.ð .õ 	Œ
×ÒÐ9¥6Ô#5Ð9Ð9Ð9Ñ:Ô:Ð:Ð:Ð:r   c                 óÒ   — | j         j        dk    rt          | ¦  «         dS | j         j        r9|                      ¦   «          t          | ¦  «         |                      ¦   «          dS d S )Nr   )rQ   r/   rl   r   Ú_do_configureÚshowhelpÚ_ensure_unconfigure)rM   s    r   Úpytest_cmdline_mainrq   –   sn   € Ø„}Ô˜qÒ Ð Ý�FÑÔÐØˆqØ	ŒÔ	ð Ø×ÒÑÔÐÝ�ÑÔÐØ×"Ò"Ñ$Ô$Ð$ØˆqØˆ4r   c                 ó°  — dd l }| j                             d¦  «        }|€J ‚|j        }|                     | j        j                             ¦   «         ¦  «         |                     ¦   «          |                     d¦  «         |                     ¦   «          |j	        }d}d|z  }| j        j
        D �]-}| j        j        |         \  }}	}
|	€d}	|€t          d|› �¦  «        ‚|› d|	› d	�}|                     d
|z  ¦  «         t          |¦  «        }||dz
  k    rI|                     ¦   «          |                     ||||d¬¦  «        }|D ]}|                     |¦  «         ŒŒ²|                     d||z
  dz
  z  ¦  «         |                     |||z
  d¬¦  «        }|r@|                     |d         ¦  «         |dd …         D ]}|                     ||z   ¦  «         Œ�Œ/|                     ¦   «          |                     d¦  «         g d¢}|D ]!\  }}|                     d|d›d|› �¦  «         Œ"|                     ¦   «          |                     ¦   «          |                     d¦  «         |                     d¦  «         |                     d¦  «         |j                             dg ¦  «        D ]!}|                     d|j        z   d¬¦  «         Œ"d S )Nr   ÚterminalreporterzY[pytest] ini-options in the first pytest.ini|tox.ini|setup.cfg|pyproject.toml file found:é   ú Ústringz!help argument cannot be None for z (z):z  %sé   F)Úinitial_indentÚsubsequent_indentÚbreak_on_hyphensé   )rz   re   zEnvironment variables:))ÚPYTEST_ADDOPTSzExtra command line options)ÚPYTEST_PLUGINSz.Comma-separated plugins to load during startup)ÚPYTEST_DISABLE_PLUGIN_AUTOLOADz"Set to disable plugin auto-loading)ÚPYTEST_DEBUGz1Set to enable debug tracing of pytest's internalsú  z<24z/to see available markers type: pytest --markersz1to see available fixtures type: pytest --fixtureszˆ(shown according to specified file_or_dir or current dir if not specified; fixtures with leading '_' are only shown with the '-v' optionÚwarningsz
warning : T)Úred)Útextwrapr_   Ú
get_pluginÚ_twrI   r    Ú	optparserÚformat_helprk   Ú	fullwidthÚ	_ininamesÚ_inidictÚ	TypeErrorÚlenÚwrapÚstatsÚgetÚmessage)rM   rƒ   ÚreporterÚtwÚcolumnsÚ
indent_lenÚindentr3   r   Útyper   ÚspecÚspec_lenÚ	helplinesrk   ÚwrappedÚvarsÚwarningreports                     r   ro   ro   ¢   sA  € Ø€O€O€Oà+1Ô+?×+JÒ+JØñ,ô ,€Hð ÐÐÐØ	Œ€BØ‡H‚HˆVŒ^Ô%×1Ò1Ñ3Ô3Ñ4Ô4Ð4Ø‡G‚G�I„I€IØ‡G‚Gð	Bñô ð ð ‡G‚G�I„I€IàŒl€GØ€JØ�:Ñ€FØ”Ô(ð +ñ +ˆØ$œnÔ5°dÔ;Ñˆˆd�GØˆ<ØˆDØˆ<ÝÐFÀÐFÐFÑGÔGÐGØÐ"Ð"˜$Ð"Ð"Ð"ˆØ
�Š�˜$‘ÑÔÐÝ�t‘9”9ˆØ�z A‘~Ò&Ð&à�GŠG‰IŒIˆIØ ŸšØØØ%Ø"(Ø!&ð &ñ ô ˆIð "ð ð �Ø—’˜‘”��ðð �HŠH�S˜J¨Ñ1°AÑ5Ñ6Ñ7Ô7Ð7Ø—m’m D¨'°JÑ*>ÐQV�mÑWÔWˆGàð +Ø—’˜ œ
Ñ#Ô#Ð#Ø# A B BœKð +ð +�DØ—G’G˜F T™MÑ*Ô*Ð*Ð*ùà‡G‚G�I„I€IØ‡G‚GÐ$Ñ%Ô%Ð%ðð ð €Dð ð (ð (‰
ˆˆdØ
�ŠÐ&�TÐ&Ð&Ð& Ð&Ð&Ñ'Ô'Ð'Ð'Ø‡G‚G�I„I€IØ‡G‚G�I„I€Ià‡G‚GÐ=Ñ>Ô>Ð>Ø‡G‚GÐ?Ñ@Ô@Ð@Ø‡G‚Gð	ñô ð ð "œ×+Ò+¨J¸Ñ;Ô;ð @ð @ˆØ
�Š�˜}Ô4Ñ4¸$ˆÑ?Ô?Ð?Ð?Ø
€Fr   )Úpytest_pluginszlist of plugin names to loadc                 ó  — g }| j                              ¦   «         }|rg|                     d¦  «         |D ]O\  }}t          |dt	          |¦  «        ¦  «        }|j        › d|j        › d|› �}|                     d|z   ¦  «         ŒP|S )Nzsetuptools registered plugins:rh   ú-z at r€   )r_   Úlist_plugin_distinfor1   r   ÚreprÚproject_namer/   )rM   Úlinesrj   ÚpluginÚdistÚlocÚcontents          r   ri   ri   ò   sž   € Ø€EØÔ%×:Ò:Ñ<Ô<€JØð )Ø�ŠÐ5Ñ6Ô6Ð6Ø&ð 	)ð 	)‰LˆF�DÝ˜& *­d°6©l¬lÑ;Ô;ˆCØÔ*ÐDÐD¨T¬\ÐDÐD¸sÐDÐDˆGØ�LŠL˜ ™Ñ(Ô(Ð(Ð(Ø€Lr   c                 óÔ  — g }| j         j        s| j         j        rH|                     dt          j        › �¦  «         t          | ¦  «        }|r|                     |¦  «         | j         j        ry|                     d¦  «         | j         	                    ¦   «         }|D ]H\  }}t          |d¦  «        r|j        }nt          |¦  «        }|                     d|d›d|› �¦  «         ŒI|S )Nzusing: pytest-zactive plugins:rh   z    z<20z: )rQ   r8   Útraceconfigr1   rT   rU   ri   Úextendr_   Úlist_name_pluginÚhasattrrh   r¡   )rM   r£   ÚverinfoÚitemsr3   r¤   Úrs          r   Úpytest_report_headerr°   þ   s   € Ø€EØ„}Ôð "˜fœmÔ7ð "Ø�ŠÐ:¥fÔ&8Ð:Ð:Ñ;Ô;Ð;å& vÑ.Ô.ˆØð 	"Ø�LŠL˜Ñ!Ô!Ð!à„}Ô ð 1Ø�ŠÐ&Ñ'Ô'Ð'ØÔ$×5Ò5Ñ7Ô7ˆØ!ð 	1ð 	1‰LˆD�&Ý�v˜zÑ*Ô*ð !Ø”O��å˜‘L”L�Ø�LŠLÐ/ Ð/Ð/Ð/¨AÐ/Ð/Ñ0Ô0Ð0Ð0Ø€Lr   )r)   Úargparser   r\   rG   Útypingr   r   r   r   Ú_pytest.configr   r	   r
   Ú_pytest.config.argparsingr   Ú_pytest.terminalr   rT   r   r?   Úhookimplrc   rl   Úintrq   ro   Úconftest_optionsrX   ri   r°   © r   r   ú<module>rº      sH  ðà 9Ð 9à Ð Ð Ð Ð Ð Ø 	€	€	€	Ø 
€
€
€
Ø Ð Ð Ð Ð Ð Ø Ð Ð Ð Ð Ð Ø Ð Ð Ð Ð Ð Ø Ð Ð Ð Ð Ð à !Ð !Ð !Ð !Ð !Ð !Ø #Ð #Ð #Ð #Ð #Ð #Ø $Ð $Ð $Ð $Ð $Ð $Ø ,Ð ,Ð ,Ð ,Ð ,Ð ,Ø -Ð -Ð -Ð -Ð -Ð -Ø €€€ðð ð ð ð �ñ ô ð ð85˜Vð 5¨ð 5ð 5ð 5ð 5ðp €„˜ÐÑÔð˜i¨¨f°fÐ(<Ô=ð ð ð ñ Ôðð@
;˜ð 
; 4ð 
;ð 
;ð 
;ð 
;ð	 ð 	¨8°E¸#¸x¸-Ô4HÔ+Ið 	ð 	ð 	ð 	ðJ�Vð J ð Jð Jð Jð JðZ GÐGÐ ð	 ð 	¨D°¬Ið 	ð 	ð 	ð 	ð ð ¨D°¬Ið ð ð ð ð ð r   