Ë
    V.jô  ã                  óˆ   — 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Zdd	„Zdd
„Zdd„Z G d„ d«      Zy)é    )Úannotations)Únodes)ÚCache)ÚConfig)ÚParser)ÚSession)Ú
TestReportzcache/stepwisec                ó‚   — | j                  d«      }|j                  dddddd¬«       |j                  d	d
dddd¬«       y )NÚgeneralz--swz
--stepwiseÚ
store_trueFÚstepwisezBExit on test failure and continue from last failing test next time)ÚactionÚdefaultÚdestÚhelpz	--sw-skipz--stepwise-skipÚstepwise_skipz_Ignore the first failing test but stop on the next failing test. Implicitly enables --stepwise.)ÚgetgroupÚ	addoption)ÚparserÚgroups     úRC:\xampp\htdocs\tradingbinance\backend\.venv\Lib\site-packages\_pytest/stepwise.pyÚpytest_addoptionr      sZ   € Ø�O‰O˜IÓ&€EØ	‡O�OØØØØØØQð ô ð 
‡O�OØØØØØð)ð õ ó    c                óÀ   — | j                   j                  rd| j                   _        | j                  d«      r&| j                  j                  t        | «      d«       y y )NTr   Ústepwiseplugin)Úoptionr   r   Ú	getoptionÚpluginmanagerÚregisterÚStepwisePlugin)Úconfigs    r   Úpytest_configurer"   #   sJ   € Ø‡}�}×"Ò"à!%ˆ�‰ÔØ×Ñ˜
Ô#Ø×Ñ×%Ñ%¤n°VÓ&<Ð>NÕOð $r   c                óî   — | j                   j                  d«      sZ| j                   j                  €J ‚t        | j                   d«      ry | j                   j                  j	                  t
        g «       y y )Nr   Úworkerinput)r!   r   ÚcacheÚhasattrÚsetÚSTEPWISE_CACHE_DIR©Úsessions    r   Úpytest_sessionfinishr+   +   s]   € Ø�>‰>×#Ñ# JÔ/Ø�~‰~×#Ñ#Ð/Ð/Ð/Ü�7—>‘> =Ô1ð à�‰×Ñ× Ñ Ô!3°RÕ8ð 0r   c                  óH   — e Zd Zdd„Zd	d„Z	 	 	 	 	 	 d
d„Zdd„Zdd„Zdd„Zy)r    c                óâ   — || _         d | _        d| _        |j                  €J ‚|j                  | _        | j                  j	                  t
        d «      | _        |j                  d«      | _        y )NÚ r   )	r!   r*   Úreport_statusr%   Úgetr(   Ú
lastfailedr   Úskip)Úselfr!   s     r   Ú__init__zStepwisePlugin.__init__7   s\   € ØˆŒØ'+ˆŒØˆÔØ�|‰|Ð'Ð'Ð'Ø"ŸL™LˆŒ
Ø&*§j¡j§n¡nÔ5GÈÓ&NˆŒØ ×*Ñ*¨?Ó;ˆ�	r   c                ó   — || _         y )Nr)   )r3   r*   s     r   Úpytest_sessionstartz"StepwisePlugin.pytest_sessionstart@   s	   € Øˆ�r   c                ó  — | j                   sd| _        y d }t        |«      D ]"  \  }}|j                  | j                   k(  sŒ |} n |€d| _        y d|› d�| _        |d | }|d |…= |j                  j                  |¬«       y )Nz)no previously failed tests, not skipping.z/previously failed test not found, not skipping.z	skipping z already passed items.)Úitems)r1   r/   Ú	enumerateÚnodeidÚhookÚpytest_deselected)r3   r!   r8   Úfailed_indexÚindexÚitemÚ
deselecteds          r   Úpytest_collection_modifyitemsz,StepwisePlugin.pytest_collection_modifyitemsC   s—   € ð �ŠØ!LˆDÔØð ˆÜ$ UÖ+‰KˆE�4Ø�{‰{˜dŸo™oÓ-Ø$�Ùð ,ð ÐØ!RˆDÕà#,¨\¨NÐ:PÐ!QˆDÔØ˜} Ð-ˆJØ�m�|�mÐ$Ø�K‰K×)Ñ)°
Ð)Õ;r   c                óH  — |j                   re| j                  r(|j                  | j                  k(  rd | _        d| _        y |j                  | _        | j                  €J ‚d| j                  _        y |j                  dk(  r"|j                  | j                  k(  rd | _        y y y )NFz0Test failed, continuing from this test next run.Úcall)Úfailedr2   r:   r1   r*   Ú
shouldstopÚwhen)r3   Úreports     r   Úpytest_runtest_logreportz'StepwisePlugin.pytest_runtest_logreport[   s‹   € Ø�=Š=Ø�yŠyð —=‘= D§O¡OÒ3Ø&*�D”Oà!�•	ð #)§-¡-�”Ø—|‘|Ð/Ð/Ð/àFð —‘Õ'ð �{‰{˜fÒ$à—=‘= D§O¡OÒ3Ø&*�D•Oð 4ð %r   c                ót   — | j                   j                  «       dk\  r| j                  rd| j                  › �S y )Nr   z
stepwise: )r!   Úget_verbosityr/   ©r3   s    r   Úpytest_report_collectionfinishz-StepwisePlugin.pytest_report_collectionfinishs   s6   € Ø�;‰;×$Ñ$Ó&¨!Ò+°×0BÒ0BØ × 2Ñ 2Ð3Ð4Ð4Ør   c                ó†   — t        | j                  d«      ry | j                  j                  t        | j
                  «       y )Nr$   )r&   r!   r%   r'   r(   r1   rK   s    r   r+   z#StepwisePlugin.pytest_sessionfinishx   s,   € Ü�4—;‘; Ô.ð Ø�
‰
�‰Ô)¨4¯?©?Õ;r   N©r!   r   ÚreturnÚNone©r*   r   rO   rP   )r!   r   r8   zlist[nodes.Item]rO   rP   )rG   r	   rO   rP   )rO   z
str | None)rO   rP   )	Ú__name__Ú
__module__Ú__qualname__r4   r6   rA   rH   rL   r+   © r   r   r    r    6   s8   „ ó<óð<Øð<Ø%5ð<à	ó<ó0+ó0ô
<r   r    N)r   r   rO   rP   rN   rQ   )Ú
__future__r   Ú_pytestr   Ú_pytest.cacheproviderr   Ú_pytest.configr   Ú_pytest.config.argparsingr   Ú_pytest.mainr   Ú_pytest.reportsr	   r(   r   r"   r+   r    rU   r   r   Ú<module>r]      s>   ðÝ "å Ý 'Ý !Ý ,Ý  Ý &ð &Ð óó*Pó9÷G<ò G<r   