File: //proc/thread-self/root/usr/local/lib/python3.7/test/__pycache__/test_largefile.cpython-37.pyc
B
��gS � @ s� d Z ddlZddlZddlZddlZddlmZmZmZm Z ddl
Z
ddlZdZ
G dd� d�Zdd� ZG d d
� d
eej�ZG dd� deej�Zd
d� Zedkr�e�� dS )z9Test largefile support on system where this makes sense.
� N)�TESTFN�requires�unlink�
bigmemtestl y* c @ sb e Zd ZdZdd� Zedd� �Zeeddd�d d
� �Z dd� Z
d
d� Zdd� Zdd� Z
dd� ZdS )�
LargeFileTestzWTest that each file function works as expected for large
(i.e. > 2 GiB) files.
c C s� t j�t�rd}nd}| �t|���}t �|�� �tj }|t d krHd S |dkrZ|�
d� |�d� |�t � |�
d� |�� | �
t �|�� �tj t d � W d Q R X d S )Nzr+bzw+b� r � z� a)�os�path�existsr �open�fstat�fileno�stat�ST_SIZE�size�write�seek�flush�assertEqual)�self�mode�fZcurrent_size� r �//usr/local/lib/python3.7/test/test_largefile.py�setUp s
zLargeFileTest.setUpc C s: | � td�� W d Q R X t�t�tj dks6| �d��d S )N�wbr z0File was not truncated by opening with mode "wb")r
r r
r r ZfailureException)�clsr r r �
tearDownClass( s
zLargeFileTest.tearDownClass� F)r ZmemuseZdry_runc C sH | � td��2}| �t|�� �td � | �|�� td � W d Q R X d S )N�rbr )r
r r �len�readr �tell)r Z_sizer r r r �test_large_read2 s zLargeFileTest.test_large_readc C s | � t�t�tj td � d S )Nr )r r
r r r r )r r r r �test_osstat9 s zLargeFileTest.test_osstatc C s� | � td����}| �|�� d� | �|�d�d� | �|�� d� |�d� | �|�� d� |�dd� | �|�� d� |�d� | �|�� d� |�dd� | �|�� d� |�dd� | �|�� d� |�dd� | �|�� d� |�dd� | �|�� td d � |�dd� | �|�� td d � |�t d d� | �|�� d� |�t� | �|�� t� | �|�d�d
� |�t d d� | �|�d�d� | �|�� d� W d Q R X d S )Nr! r r r �* �T r i�����
r )r
r r r$ r# r r )r r r r r �test_seek_read<