
    tf                        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  ed	          Zd
ZddZ G d dej                  ZdS )z*
Tests for the output generated by trial.
    )annotationsN)StringIO)TypeVar)trial)runner)packages_TzNo module named 'frotz'argsstrreturnc                 8   ddl m} t          j                    }|                    |            t                      }t          j        |j        ||d                   }t          j	        |          }|
                    |           |                                S )Nr   )reporterztemp-directory)streamworkingDirectory)twisted.trialr   r   OptionsparseOptionsr   r   TrialRunnerVerboseTextReporter	_getSuiterungetvalue)r
   r   configoutputmyRunnersuites         ]/var/www/surfInsights/venv3-11/lib/python3.11/site-packages/twisted/trial/test/test_output.pyrunTrialr      s    &&&&&&]__F
ZZF!$ 01  H
 OF##ELL??    c                       e Zd ZdZd dZdZd!dZd"dZd# fdZd# fdZ	d dZ
d$dZd$dZd$dZd$dZd$dZd$dZd$dZd$dZd$dZd$dZd$dZd$dZd$dZ xZS )%ImportErrorsTestszbActually run trial as if on the command line and check that the output
    is what we expect.
    r   Nonec                    d S N selfs    r   debugzImportErrorsTests.debug+   s    r   _testImportErrorsr
   r   c                B    t          d|                                 g|R  S )Nz--temp-directory)r   mktemp)r'   r
   s     r   r   zImportErrorsTests.runTrial0   s#    *DKKMMADAAAAr   stuffr	   c                $    t          |           |S r$   )print)r'   r,   s     r   _printzImportErrorsTests._print3   s    er   	container	containeeobjectkwargsc                D     t                      j        ||g|R i | |S r$   )superassertInr'   r0   r1   r
   r3   	__class__s        r   r6   zImportErrorsTests.assertIn7   s4     	I???????r   c                D     t                      j        ||g|R i | |S r$   )r5   assertNotInr7   s        r   r:   zImportErrorsTests.assertNotIn>   s4     	IyB4BBB6BBBr   c                .    |                                   d S r$   )r   r&   s    r   test_trialRunzImportErrorsTests.test_trialRunE   s    r   c                    |                      d          }|                     |d           |                     |d           |S )Nztwisted.doesntexist[ERROR]r   r6   r'   ds     r   test_nonexistentModulez(ImportErrorsTests.test_nonexistentModuleH   sB    MM/00a###a.///r   c                    |                      d          }|                     |d           |                     |d           |                     |d           |S )NdoesntexistModuleNotFoundr>   r?   r@   s     r   test_nonexistentPackagez)ImportErrorsTests.test_nonexistentPackageN   sU    MM-((a'''a)***a###r   c                    |                      d          }|                     |d           |                     |d           |                     |d           |S )Nzdoesntexist.barneyObjectNotFoundr>   r?   r@   s     r   !test_nonexistentPackageWithModulez3ImportErrorsTests.test_nonexistentPackageWithModuleU   sW    MM.//a-...a)***a###r   c                    |                      d          }|                     |d           |                     |d           |                     |d           |S )N
badpackager>   IOErrorr   r6   r:   r@   s     r   test_badpackagez!ImportErrorsTests.test_badpackage\   sV    MM,''a###a&&&I&&&r   c                    |                      d          }|                     |d           |                     |d           |                     |d           |S )Nzbadpackage.test_moduler>   rL   rM   r@   s     r   test_moduleInBadpackagez)ImportErrorsTests.test_moduleInBadpackagec   sX    MM233a###a1222I&&&r   c                    |                      d          }|                     |d           |                     |d           |                     |d           |                     |d           |S )Nzpackage.test_bad_moduler>   rL   <module rM   r@   s     r   test_badmodulez ImportErrorsTests.test_badmodulej   sn    MM344a###a2333I&&&J'''r   c                    |                      d          }|                     |d           |                     |d           |                     |d           |                     |d           |S )Nzpackage.test_import_moduler>   rL   rR   rM   r@   s     r   test_badimportz ImportErrorsTests.test_badimportr   sn    MM677a###a5666I&&&J'''r   c                   |                      d          }|                     |d           |                     |d           |                     |d           |                     |d           |                     |d           |S )Npackager>   test_bad_moduletest_import_modulerR   rL   rM   r@   s     r   test_recurseImportz$ImportErrorsTests.test_recurseImportz   s    MM)$$a###a*+++a-...J'''I&&&r   c                B   |                      d          }|                     |d           |                     |d           |                     |d           |                     |t                     |                     |d           |                     |d           |S )Npackage2r>   test_modulerR   rL   r   r6   _noModuleErrorr:   r@   s     r   test_recurseImportErrorsz*ImportErrorsTests.test_recurseImportErrors   s    MM*%%a###a$$$a'''a(((J'''I&&&r   c                    |                      dd          }|                     |d           |                     |t                     |                     |d           |S )Nz-Nr\   r>   rR   r^   r@   s     r   test_nonRecurseImportErrorsz-ImportErrorsTests.test_nonRecurseImportErrors   sX    MM$
++a###a(((J'''r   c                    |                      d          }|                     |d           |                     |d           |                     |d           |                     |d           |S )Nzpackage.test_moduler>   rL   OKPASSED (successes=1))r   r:   r6   r@   s     r   test_regularRunz!ImportErrorsTests.test_regularRun   sn    MM/00I&&&I&&&aa/000r   c                \   |                      | j                   |                     t          j                            | j        dd                    }|                     |d           |                     |d           |                     |d           |                     |d           |S )NrW   ztest_module.pyr>   rL   rd   re   	mangleSysPatholdPathr   ospathjoinparentr:   r6   r@   s     r   test_filenamezImportErrorsTests.test_filename   s    4<(((MM"',,t{I?OPPQQI&&&I&&&aa/000r   c                \   |                      | j                   |                     t          j                            | j        dd                    }|                     |d           |                     |d           |                     |d           |                     |d           |S )NrW   ztest_dos_module.pyr>   rL   rd   re   rh   r@   s     r   test_dosFilezImportErrorsTests.test_dosFile   s    4<(((MM"',,t{I?STTUUI&&&I&&&aa/000r   )r   r"   r
   r   r   r   )r,   r	   r   r	   )
r0   r   r1   r   r
   r2   r3   r2   r   r   )r   r   )__name__
__module____qualname____doc__r(   rn   r   r/   r6   r:   r<   rB   rF   rI   rN   rP   rS   rU   rZ   r`   rb   rf   ro   rq   __classcell__)r8   s   @r   r!   r!   &   s            !FB B B B                                                           r   r!   rr   )rv   
__future__r   rk   ior   typingr   twisted.scriptsr   r   r   twisted.trial.testr   r	   r_   r   SysPathManglingTestr!   r%   r   r   <module>r~      s     # " " " " " 				             ! ! ! ! ! !             ' ' ' ' ' 'WT]]*    G G G G G4 G G G G Gr   