
    YfP
                         d Z ddlmZ ddlmZmZmZ ddlmZ ddl	m
Z
 ddlmZ ddlmZmZ eeeeeef         f         Z ee           G d	 d
 e
e                                ZdS )z
The reporter is not made to support concurrent test running, so we will
hold test results in here and only send them to the reporter once the
test is over.

@since: 12.3
    )TracebackType)OptionalTupleUnion)implementer)proxyForInterface)Failure   )	IReporter	ITestCasec            	            e Zd ZdZ fdZd ZdededdfdZded	eddfd
Z	d Z
ddZ	 dded	edee         ddfdZd Zd Z xZS )DistReporterz
    See module docstring.
    c                 X    t                                          |           i | _        d S N)super__init__running)selforiginal	__class__s     R/var/www/html/env/lib/python3.11/site-packages/twisted/trial/_dist/distreporter.pyr   zDistReporter.__init__    s&    """    c                     g | j         |                                <   | j         |                                                             | j        j        |f           dS )z&
        Queue test starting.
        N)r   idappendr   	startTestr   tests     r   r   zDistReporter.startTest$   sK     #%TWWYYTWWYY&&(?'FGGGGGr   r   failreturnNc                     | j         |                                                             | j        j        ||f           dS )z)
        Queue adding a failure.
        N)r   r   r   r   
addFailure)r   r   r   s      r   r"   zDistReporter.addFailure+   s9     	TWWYY&&(@$'MNNNNNr   errorc                     | j         |                                                             | j        j        ||f           dS )z%
        Queue error adding.
        N)r   r   r   r   addError)r   r   r#   s      r   r%   zDistReporter.addError1   s9     	TWWYY&&(>e'LMMMMMr   c                     | j         |                                                             | j        j        ||f           dS )z&
        Queue adding a skip.
        N)r   r   r   r   addSkip)r   r   reasons      r   r'   zDistReporter.addSkip7   s9     	TWWYY&&(=tV'LMMMMMr   c                     | j         |                                                             | j        j        ||f           dS )z5
        Queue adding an unexpected success.
        N)r   r   r   r   addUnexpectedSuccess)r   r   todos      r   r*   z!DistReporter.addUnexpectedSuccess=   s:     	TWWYY&&(JDRV'WXXXXXr   r+   c                     | j         |                                                             | j        j        |||f           dS )z3
        Queue adding an expected failure.
        N)r   r   r   r   addExpectedFailure)r   r   r#   r+   s       r   r-   zDistReporter.addExpectedFailureC   sF     	TWWYY&&]-tUDA	
 	
 	
 	
 	
r   c                     | j         |                                                             | j        j        |f           dS )z)
        Queue adding a success.
        N)r   r   r   r   
addSuccessr   s     r   r/   zDistReporter.addSuccessM   s7     	TWWYY&&(@$'GHHHHHr   c                     | j         |                                                             | j        j        |f           | j         |                                         D ]} |d         |dd           | j         |                                = dS )zA
        Queue stopping the test, then unroll the queue.
        r      N)r   r   r   r   stopTest)r   r   steps      r   r2   zDistReporter.stopTestS   s     	TWWYY&&(>'EFFFL+ 	 	DDGT!""XL###r   r   )__name__
__module____qualname____doc__r   r   r   ReporterFailurer"   r%   r'   r*   r   strr-   r/   r2   __classcell__)r   s   @r   r   r      sC            H H HOy O OD O O O ONY N N4 N N N NN N NY Y Y Y NR
 

&5
=Ec]
	
 
 
 
I I I$ $ $ $ $ $ $r   r   N)r7   typesr   typingr   r   r   zope.interfacer   twisted.python.componentsr   twisted.python.failurer	   itrialr   r   type	Exceptionr8   r    r   r   <module>rD      s           ) ) ) ) ) ) ) ) ) ) & & & & & & 7 7 7 7 7 7 * * * * * * ) ) ) ) ) ) ) )tY'E!FFG Y?$ ?$ ?$ ?$ ?$$$Y// ?$ ?$ ?$ ?$ ?$r   