%PDF- %PDF-
| Direktori : /usr/lib/python3.9/site-packages/tracer/tests/__pycache__/ |
| Current File : //usr/lib/python3.9/site-packages/tracer/tests/__pycache__/test_rules.cpython-39.pyc |
a
"e� � @ s� d dl T ddlmZ ddlmZmZ zddlmZmZ dZ W n ddl
mZmZ dZ Y n0 G dd � d ej�Z
ed
kr�e�� dS )� )�*� )�DATA_DIR)�Rules�Rule)�patch� mock_openz
builtins.openz__builtin__.openc @ s` e Zd Zedd� �Zdd� Zdd� Zdd� Zd d
� Zdd� Z d
d� Z
dd� Zdd� Zdd� Z
dS )� TestRulesc C s dd� t jD �| _d S )Nc S s g | ]}|� 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 �
setUpClass s zTestRules.setUpClassc C s | j t_ d t_d S �N)r r Z_rules��selfr
r
r �setUp s zTestRules.setUpc C s t �� D ]}| �|t� qd S r )r �allZassertIsInstancer �r Zruler
r
r �test_rules_types s zTestRules.test_rules_typesc C s| d}t �� D ]j}d|vs d|vr2| �dt|� � |jt j�� vrR| �d|j � t|�dkrn| �d|j � |d7 }qd S )Nr �name�actionzMissing attributes in rule #zUnknown action in rule: � z Unsupported attributes in rule: ) r r �fail�strr ZACTIONS�valuesr �len)r �i�rr
r
r �test_rules_attributes s zTestRules.test_rules_attributesc C s4 t �� }|D ]"}|�|�dkr| �d|j � qd S )Nr zDuplicate rules for: )r r �countr r )r �rulesr# r
r
r �test_rules_duplicity* s zTestRules.test_rules_duplicityc C s | � t�d�� d S )NZNON_EXISTING_APPLICATION)ZassertIsNoner �findr r
r
r �test_app_with_no_rule0 s zTestRules.test_app_with_no_rulec C s0 t ddi�}| �t|�d� | �t|�d� d S )Nr �fooz<Rule: foo>)r �assertEqualr �reprr r
r
r �test_representations3 s zTestRules.test_representationsc C s8 t ddd��}t ddd��}|�|� | �|jd� d S )Nr* �bar)r r Zbaz)r �updater+ r )r Zr1Zr2r
r
r �test_update8 s
zTestRules.test_updatec C s� dgt _d}ttt|d���v t �� }| �t|�d� | �tdd� |D ��� | �|d j d� | �|d j
d � | �|d
j d� W d � n1 s�0 Y dS )
z/
Test parsing a single XML file with rules
zwhatever-file.xmlzM<rules> <rule name='foo' action='return' /> <rule name='bar' /></rules>)Z read_datar c S s g | ]}t |t��qS r
)�
isinstancer r r
r
r r M � z'TestRules.test_load.<locals>.<listcomp>r r* �returnr r. N)r r r �
builtins_openr r r+ r! Z
assertTruer r )r �datar&