U
    42‹iÄ  ã                   @  sr   d Z ddlmZ ddlmZ ddlmZ ddlmZ ddddddd	œd
d„Zddddddddddddœ
dd„Z	dS )z<Helper plugin for pytester; should not be loaded on its own.é    )Úannotations)ÚSequence)ÚCollectReport)Ú
TestReportzgtuple[Sequence[TestReport], Sequence[CollectReport | TestReport], Sequence[CollectReport | TestReport]]ÚintÚNone)ÚoutcomesÚpassedÚskippedÚfailedÚreturnc           
      C  sF   d}| \}}}t |ƒt |ƒt |ƒdœ}|||dœ}	||	ksBt| ƒ‚d S )NT)r	   r
   r   )ÚlenÚAssertionError)
r   r	   r
   r   Ú__tracebackhide__Z
realpassedZrealskippedZ
realfailedÚobtainedÚexpected© r   ú?/tmp/pip-unpacked-wheel-7n2p7kht/_pytest/pytester_assertions.pyÚassertoutcome   s    

ýr   Nzdict[str, int]z
int | None)
r   r	   r
   r   ÚerrorsÚxpassedÚxfailedÚwarningsÚ
deselectedr   c	              	   C  s¨   d}	|   dd¡|   dd¡|   dd¡|   dd¡|   dd¡|   dd¡d	œ}
||||||d	œ}|d
k	rx|   dd¡|
d< ||d< |d
k	r˜|   dd¡|
d< ||d< |
|ks¤t‚d
S )z‡Assert that the specified outcomes appear with the respective
    numbers (0 means it didn't occur) in the text output from a test run.Tr	   r   r
   r   r   r   r   )r	   r
   r   r   r   r   Nr   r   )Úgetr   )r   r	   r
   r   r   r   r   r   r   r   r   r   r   r   r   Úassert_outcomes%   s,    





ú	úr   )r   r   r   )r   r   r   r   r   r   NN)
Ú__doc__Ú
__future__r   Útypingr   Z_pytest.reportsr   r   r   r   r   r   r   r   Ú<module>   s"   	   ø        ÷