File: //lib/python3/dist-packages/fail2ban/tests/__pycache__/failmanagertestcase.cpython-38.pyc
U
]^
# � @ sp d Z dZdZddlZddlmZ ddlmZmZ ddl m
Z
dd lmZ G d
d� dej
�ZG dd
� d
ej
�ZdS )z
Cyril Jaquierz Copyright (c) 2004 Cyril JaquierZGPL� N� )�failmanager)�FailManager�FailManagerEmpty)�IPAddr)�
FailTicketc s� e Zd Z� fdd�Z� fdd�Zdd� Zdd� Zd d
� Zdd� Zd
d� Z dd� Z
dd� Zdd� Zdd� Z
dd� Zdd� Z� ZS )�
AddFailurec s t t| ��� d| _t� | _dS )�Call before every test case.N)�superr �setUp�_AddFailure__itemsr �_AddFailure__failManager��self�� __class__� �D/usr/lib/python3/dist-packages/fail2ban/tests/failmanagertestcase.pyr % s zAddFailure.setUpc s t t| ��� dS )zCall after every test case.N)r
r �tearDownr r r r r + s zAddFailure.tearDownc C s~ ddgddgddgddgddgddgddgddgddgddgddgddgdd gg
| _ | j D ]}| j�t|d
|d �� qZd S )N�
193.168.0.128g �;f�Az
87.142.124.10�
100.100.10.10g e��Ag �e��Ag �f��Ag �g��A� �h��Ar � )r r
�
addFailurer )r �ir r r �_addDefItems/ s �
zAddFailure._addDefItemsc C sZ | � � | �| j�� d� | �| j�� d� | j�d� | �| j�� d� | j�d� d S )N� �
r )r �assertEqualr
�sizeZgetFailTotalZsetFailTotalr r r r �testFailManagerAdd@ s zAddFailure.testFailManagerAddc C s d}|| j _ddddg}d}|D ]4}|d8 }tdd | |g�}|�d
� | j �|� q | j j}| �t|�d
� |d }| �|�� t|�� | �t|� � �|� | �|� � |t|�| d � � tdd|�}|�t|�� | j �|� | j j}| �t|�d
� |d }| �|�� dt|� � | �t|� � �|� | �|� � |t|�| d � � | j �|� | j j}| �t|�d
� |d }| �|�� dt|� d
� | �t|� � �|� | �|� � |t|�| d � � d| j _| j �|� | j j}|d }| �t|� � �d� |�
d � d S )
Nr zabc
z123
zABC
z1234
�P �
z 127.0.0.1i�њ;r i�њ;r )r
�
maxMatchesr Z
setAttemptr Z_FailManager__failListr �lenZ
getAttemptZ
getMatchesZ
setMatches)r r# Zfailuresr �f�ticketZmanFailListr r r �testFailManagerAdd_MaxMatchesH sJ
z(AddFailure.testFailManagerAdd_MaxMatchesc C sH | � � | �| j�� d� | j�d� | �| j�� d� | j�d� d S )NiX r )r r r
Z
getMaxTimeZ
setMaxTimer r r r �testFailManagerMaxTimez s
z!AddFailure.testFailManagerMaxTimec C s6 | � � | j�d� | j�d� | �| j�� d� d S )Nr z
111.111.1.111r )r r
Z
delFailurer r r r r r �testDel� s zAddFailure.testDelc C s. | � � d}| j�|� | �| j�� d� d S )Ng �5f�Ar �r r
Zcleanupr r �r Z timestampr r r �
testCleanupOK� s zAddFailure.testCleanupOKc C s. | � � d}| j�|� | �| j�� d� d S )Ng �9f�Ar r* r+ r r r �testCleanupNOK� s zAddFailure.testCleanupNOKc C s� | � � | j�d� | j�� }| �|�� d� | �t|�� tt f�� t|�}t
|�}| �|d� | �|d� | �| � |�d� | �|�
� d� | �t|�d� d S )N� r z]FailTicket: ip=193.168.0.128 time=1167605999.0 bantime=None bancount=0 #attempts=5 matches=[]r z]FailTicket: ip=193.168.0.128 time=1000002000.0 bantime=None bancount=0 #attempts=5 matches=[])r r
�setMaxRetry�toBanr �getIP�
assertTrue�
isinstance�strr �repr�assertFalseZsetTimeZgetTime)r r&