§
    Ètºf‘  ã                   óž   — d Z ddlmZ ddlmZmZ ddlZddlm	Z	 ddl	m
Z
mZ  G d	„ d
ej        j        j        ¦  «        Z G d„ d¦  «        ZdS )z0
Tests for L{twisted.application.runner._exit}.
é    )ÚStringIO)ÚOptionalÚUnionNé   )Ú_exité   )Ú
ExitStatusÚexitc                   ó:   — e Zd ZdZd	d„Zd	d„Zd	d„Zd	d„Zd	d„ZdS )
Ú	ExitTestsz
    Tests for L{exit}.
    ÚreturnNc                 ón   — t          ¦   «         | _        |                      t          d| j        ¦  «         d S )NÚsysexit)Ú	DummyExitr
   Úpatchr   ©Úselfs    úh/var/www/surfInsights/venv3-11/lib/python3.11/site-packages/twisted/application/runner/test/test_exit.pyÚsetUpzExitTests.setUp   s+   € Ý‘K”KˆŒ	Ø�
Š
•5˜) T¤YÑ/Ô/Ð/Ð/Ð/ó    c                 óh   — d}t          |¦  «         |                      | j         j        |¦  «         dS )zR
        L{exit} given an L{int} status code will pass it to L{sys.exit}.
        iÒ  N)r
   ÚassertEqualÚarg©r   Ústatuss     r   Útest_exitStatusIntzExitTests.test_exitStatusInt   s4   € ð ˆÝˆV‰ŒˆØ×Ò˜œœ¨Ñ/Ô/Ð/Ð/Ð/r   c                 ó†   — t           j        }t          |¦  «         |                      | j        j        |j        ¦  «         dS )zu
        L{exit} given a L{ValueConstant} status code passes the corresponding
        value to L{sys.exit}.
        N)r	   Ú	EX_CONFIGr
   r   r   Úvaluer   s     r   Útest_exitConstantzExitTests.test_exitConstant!   s9   € õ
 Ô%ˆÝˆV‰ŒˆØ×Ò˜œœ¨¬Ñ5Ô5Ð5Ð5Ð5r   c                 óÔ   — t          ¦   «         }|                      t          d|¦  «         d}t          d|¦  «         |                      |                     ¦   «         |dz   ¦  «         dS )zq
        L{exit} given a status code of zero (C{0}) writes the given message to
        standard output.
        ÚstdoutúHello, world.r   ú
N©r   r   r   r
   r   Úgetvalue©r   ÚoutÚmessages      r   Útest_exitMessageZerozExitTests.test_exitMessageZero*   s`   € õ
 ‰jŒjˆØ�
Š
•5˜( CÑ(Ô(Ð(à!ˆÝˆQ�ÑÔÐà×Ò˜Ÿš™œ¨°4©Ñ8Ô8Ð8Ð8Ð8r   c                 óÔ   — t          ¦   «         }|                      t          d|¦  «         d}t          d|¦  «         |                      |                     ¦   «         |dz   ¦  «         dS )zj
        L{exit} given a non-zero status code writes the given message to
        standard error.
        Ústderrr#   é@   r$   Nr%   r'   s      r   Útest_exitMessageNonZeroz!ExitTests.test_exitMessageNonZero7   s`   € õ
 ‰jŒjˆØ�
Š
•5˜( CÑ(Ô(Ð(à!ˆÝˆR�ÑÔÐà×Ò˜Ÿš™œ¨°4©Ñ8Ô8Ð8Ð8Ð8r   ©r   N)	Ú__name__Ú
__module__Ú__qualname__Ú__doc__r   r   r    r*   r.   © r   r   r   r      s‚   € € € € € ðð ð0ð 0ð 0ð 0ð0ð 0ð 0ð 0ð6ð 6ð 6ð 6ð9ð 9ð 9ð 9ð9ð 9ð 9ð 9ð 9ð 9r   r   c                   óH   — e Zd ZdZdd„Zddeeeef                  ddfd„Z	dS )	r   zv
    Stub for L{sys.exit} that remembers whether it's been called and, if it
    has, what argument it was given.
    r   Nc                 ó   — d| _         d S )NF)Úexitedr   s    r   Ú__init__zDummyExit.__init__K   s   € ØˆŒˆˆr   r   c                 ó4   — | j         rJ ‚|| _        d| _         d S )NT)r7   r   )r   r   s     r   Ú__call__zDummyExit.__call__N   s"   € Ø”;ÐÐÐàˆŒØˆŒˆˆr   r/   )N)
r0   r1   r2   r3   r8   r   r   ÚintÚstrr:   r4   r   r   r   r   E   sf   € € € € € ðð ð
ð ð ð ðð ˜H U¨3°¨8¤_Ô5ð Àð ð ð ð ð ð r   r   )r3   Úior   Útypingr   r   Útwisted.trial.unittestÚtwistedÚrunnerr   r	   r
   ÚtrialÚunittestÚTestCaser   r   r4   r   r   ú<module>rE      sÖ   ððð ð Ð Ð Ð Ð Ð Ø "Ð "Ð "Ð "Ð "Ð "Ð "Ð "à Ð Ð Ð Ø Ð Ð Ð Ð Ð Ø $Ð $Ð $Ð $Ð $Ð $Ð $Ð $ð29ð 29ð 29ð 29ð 29�”Ô&Ô/ñ 29ô 29ð 29ðjð ð ð ð ñ ô ð ð ð r   