Current File : //usr/lib64/python3.6/site-packages/borg/testsuite/__pycache__/benchmark.cpython-36.pyc
3

y��b/�@s�dZddlZddlZddlmZmZejdd��Zejddgd	�d
d��Zejdd
dgd�dd��Z	ejddgd	�dd��Z
dd�Zdd�Zdd�Z
dd�Zdd�Zdd �Zd!d"�Zd#d$�ZdS)%zM
Do benchmarks using pytest-benchmark.

Usage:

    py.test --benchmark-only
�N�)�	changedir�cmdccs||jdd�|jdd�|jdd�|jdd�|jdt|jd	���|jd
t|jd���t|jd��V|jd
d�dS)NZBORG_PASSPHRASEZ123456Z!BORG_CHECK_I_KNOW_WHAT_I_AM_DOINGZYESZ"BORG_DELETE_I_KNOW_WHAT_I_AM_DOINGZ*BORG_UNKNOWN_UNENCRYPTED_REPO_ACCESS_IS_OK�yesZ
BORG_KEYS_DIR�keysZBORG_CACHE_DIR�cacheZ
repositoryr)�rec)Zsetenv�str�join�remove)�request�tmpdirZmonkeypatch�r�!/usr/lib64/python3.6/benchmark.py�repo_urlsr�noneZrepokey)�paramscCs|dd|j|�|S)NZinitz--encryption)�param)rrrrrr�reposrZsession�zeros�random)Zscoperc	cs�d\}}|jd�}|j}|dkr*dd�}n|dkr<dd�}ntd	��xBt|�D]6}tt|jt|���d
��}|j||��WdQRXqNWt|�V|jdd�dS)N�
i��datarcSsd|S)N�0r)�sizerrrr)sztestdata.<locals>.datarcSs
tj|�S)N)�os�urandom)rrrrr,sz&data_type must be 'random' or 'zeros'.�wbr)r�@B)rr)	Zmktempr�
ValueError�range�openr	r
�writer)	rZtmpdir_factory�countr�pZ	data_typer�i�frrr�testdata"s



r'�lz4cCs|d}|dd|j||�|S)Nz::test�createz
--compression)r)rrrr'Zarchive_urlrrr�archive7sr*cCs.|j|ddd|d|f�\}}|dks*t�dS)Nr)z
--compressionrz::testr)�pedantic�AssertionError)�	benchmarkrrr'�result�outrrr�test_create_none>sr0cCs.|j|ddd|d|f�\}}|dks*t�dS)Nr)z
--compressionr(z::testr)r+r,)r-rrr'r.r/rrr�test_create_lz4Csr1cCs<tt|���|j|d|f�\}}WdQRX|dks8t�dS)N�extractr)rr	r+r,)r-rr*r
r.r/rrr�test_extractHsr3cCs$|j|d|f�\}}|dks t�dS)N�deleter)r+r,)r-rr*r.r/rrr�test_deleteNsr5cCs ||d|�\}}|dkst�dS)N�listr)r,)r-rr*r.r/rrr�	test_listSsr7cCs ||d|�\}}|dkst�dS)N�infor)r,)r-rr*r.r/rrr�	test_infoXsr9cCs.|jd�d}||d|�\}}|dks*t�dS)Nz::rZcheck)�splitr,)r-rr*rr.r/rrr�
test_check]sr;cCs||d�\}}|dkst�dS)N�helpr)r,)r-rr.r/rrr�	test_helpcsr=)�__doc__rZpytestZarchiverrrZfixturerrr'r*r0r1r3r5r7r9r;r=rrrr�<module>s