File: //lib/python3/dist-packages/twisted/python/test/__pycache__/test_zipstream.cpython-38.pyc
U
�`�[0 � @ s� d Z ddlZddlZddlZddlmZ ddlmZmZ ddl m
Z
G dd� de�ZG dd � d ee
j
�ZG d
d� dee
j
�ZG dd
� d
e
j
�ZdS )z'
Tests for L{twisted.python.zipstream}
� N)�md5)� zipstream�filepath)�unittestc @ s` e Zd ZdZdd� Zdd� Zdd� Zdd � Zd
d� Zdd
� Z dd� Z
dd� Zdd� Zdd� Z
dS )�FileEntryMixinz?
File entry classes should behave as file-like objects
c C sF | � � }t�|d| j��}|�d|� W 5 Q R X t�|d�}|�d�S )z6
Return an appropriate zip file entry
�w�content�r)�mktemp�zipfile�ZipFile�compression�writestrr �ChunkingZipFile�readfile)�self�contents�filename�z� r �D/usr/lib/python3/dist-packages/twisted/python/test/test_zipstream.py�getFileEntry s
zFileEntryMixin.getFileEntryc C s( | � d��}| �|�� � W 5 Q R X dS )zK
zip files should not be ttys, so isatty() should be false
� N)r �assertFalse�isatty�r Z fileEntryr r r �test_isatty s zFileEntryMixin.test_isattyc C s2 | � d��}| �|j� W 5 Q R X | �|j� dS )zd
The C{closed} attribute should reflect whether C{close()} has been
called.
r N)r r �closed�
assertTruer r r r �test_closed( s zFileEntryMixin.test_closedc C sJ | � d��6}| �|�� d� | �|�� d� | �|�� d� W 5 Q R X dS )zk
C{readline()} should mirror L{file.readline} and return up to a single
delimiter.
s hoho
hos hoho
� ho� N)r �assertEqual�readliner r r r �
test_readline2 s zFileEntryMixin.test_readlinec C sH | � d��4}| �|�� d� | �|�� d� | �t|j� W 5 Q R X dS )zV
Zip file entries should implement the iterator protocol as files do.
s ho
hoho� ho
s hohoN)r r"