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

y��b��@s�ddlZddlZyddlZWnek
r4dZYnXddlZddlmZmZmZm	Z	m
Z
mZmZm
Z
mZed"�ZddZeddd	�Zd
d�Zdd
�Zdd�Zdd�Zdd�Zdd�Zdd�Zdd�Zdd�Zdd�Zdd�Zd d!�ZdS)#�N�)	�get_compressor�
Compressor�CompressionSpec�CNONE�ZLIB�LZ4�LZMA�ZSTD�Auto�sfooooooooobaaaaaaaar�
�zlib�)�name�levelc
Csltdd�}t|t�st�tdd�}t|t�s0t�tdd�}t|t�sHt�tjt��tdd�WdQRXdS)N�none)r�lz4rZfoobar)	r�
isinstancer�AssertionErrorrr�pytest�raises�KeyError)�c�r� /usr/lib64/python3.6/compress.py�test_get_compressors


rcCsbtdd�}|jt�}t|�tt�ks(t�t|ks4t�t|j|�ksFt�ttft�j|�ks^t�dS)Nr)r)r�compress�data�lenr�
decompressr�params)r�cdatarrr�
test_cnulls

r#cCsVtdd�}|jt�}t|�tt�ks(t�t|j|�ks:t�ttft�j|�ksRt�dS)Nr)r)rrrrrr rr!)rr"rrr�test_lz4&s


r$cCs\tjd	�d}t|�dkst�tdd�}|j|�}t|�t|�ksFt�||j|�ksXt�dS)N�r�r
�2r)riiPii )�os�urandomrrrrr )rrr"rrr�test_lz4_buffer_allocation.s

r*cCsVtdd�}|jt�}t|�tt�ks(t�t|j|�ks:t�ttft�j|�ksRt�dS)Nr)r)rrrrrr rr!)rr"rrr�	test_zlib8s


r+cCshtdkrtjd�tdd�}|jt�}t|�tt�ks:t�t|j|�ksLt�tt	ft
�j|�ksdt�dS)NzNo lzma support found.�lzma)r)r,r�skiprrrrrr rr!)rr"rrr�	test_lzma@s


r.cCsVtdd�}|jt�}t|�tt�ks(t�t|j|�ks:t�ttft�j|�ksRt�dS)N�zstd)r)rrrrrr rr!)rr"rrr�	test_zstdJs


r0cCsPtjt��tft�jd�WdQRXtjt��tft�jd�WdQRXdS)Ns��totalcrapsnotreallyzlib)rr�
ValueErrorrr!r rrrr�test_autodetect_invalidRsr2cCsvxptd�D]d}td|d�}|jt�}tjt|�}||ks<t�|j|�}t|ksRt�tft�j|�}t|ks
t�q
WdS)Nr
r)rr)	�rangerrrrrr rr!)rrZcdata1Zcdata2Zdata2rrr�test_zlib_compatYs

r4c
Cs�tdd�tdd�tddd�tddd�tdd	d�tdd
d�tddd�g}trf|tdd	d�tdd
d�g7}x.|D]&}tf|�}t|j|jt��kslt�qlWdS)
Nr)rrr/�)rr�rrr�	r,)�dictr,rrr rr)Zparams_listr!rrrr�test_compressorgs






r9c	Cs�td�j}td�j}td�j}td�}|j|�}|j|�}|j|�}t|�t|�}|dkrjtj|�tkntsrt	�d}|j|�}tj|�t
ks�t	�dS)Nzauto,zlib,9rzzlib,9i�g�G�z��?s ���-O�i��1�8\�b��E���hm�~)r�
compressor�bytesrrrZdetectrrrr)	Zcompressor_auto_zlibZcompressor_lz4Zcompressor_zlibrZcompressed_auto_zlibZcompressed_lz4Zcompressed_zlibZratioZ
compressedrrr�	test_auto}s






r<cCstjt��td�WdQRXttd�jt�s2t�ttd�jt�sFt�td�j}t|t	�s^t�|j
dkslt�td�j}t|t	�s�t�|j
dks�t�td�j}t|t	�s�t�|j
d	ks�t�tjt��td
�WdQRXtd�j}t|t�s�t�|j
dks�t�td�j}t|t��st�|j
dk�s&t�td
�j}t|t��s@t�|j
d	k�sPt�td�j}t|t��sjt�|j
dk�szt�td�j}t|t��s�t�|j
dk�s�t�td�j}t|t��s�t�|j
dk�s�t�tjt��td�WdQRXtjt��td�WdQRXdS)N�rrrrzzlib,0rzzlib,9r7zzlib,9,invalidr,zlzma,0zlzma,9r/r6zzstd,1r5zzstd,22�zlzma,9,invalidZinvalid)
rrr1rrr:rrrrrr	r
)rr,r/rrr�test_compression_specs�sJ








r?i) r(rr,�ImportErrorrrrrrrrrr	r
rr;�bufferrr8r!rr#r$r*r+r.r0r2r4r9r<r?rrrr�<module>s,
,