3
���hh8 � @ s< d Z ddlZddlZddlZddlZddlZddlZddlZddlm Z m
Z
ddlZddlZddl
mZmZmZ ddljjZddlZddlmZ ddljZddlmZmZ e� Zejdd�d d
� �Z dPdd�Z!d
d� Z"dd� Z#dd� Z$dd� Z%dd� Z&dd� Z'dd� Z(dd� Z)ejej*j+ej*j,e-�dddd ��Z.eje.d!�d"d� �Z/d#d$� Z0d%d&� Z1d'd(� Z2d)d*� Z3d+d,� Z4ejd-d.� �Z5G d/d0� d0�Z6G d1d2� d2�Z7ej8j9d3d4gd5ejd6d7d8g�fd9ej:j;d6d7d8gd:d;d<gg�fg�d=d>� �Z<d?d@� Z=ej8j9dAdBdCdDg�dEdF� �Z>ej?dG�dHdI� �Z@G dJdK� dKejA�ZBdLdM� ZCdNdO� ZDdS )Qa<
manage legacy pickle tests
How to add pickle tests:
1. Install pandas version intended to output the pickle.
2. Execute "generate_legacy_storage_files.py" to create the pickle.
$ python generate_legacy_storage_files.py <output_dir> pickle
3. Move the created pickle to "data/legacy_pickle/<version>" directory.
� N)�catch_warnings�simplefilter)�_get_lzma_file�_import_lzma�is_platform_little_endian)�Index)�Day�MonthEnd�module)Zscopec C s ddl m} | � S )Nr )�create_pickle_data)Z-pandas.tests.io.generate_legacy_storage_filesr )r � r �=/tmp/pip-build-5_djhm0z/pandas/pandas/tests/io/test_pickle.py�current_pickle_data% s r c C s� t |t�rtj|| � d S |jd�r6tj}|| |� n`|dkrv|tjkrX| tjkstt�q�| |ksdt�| j |j ks�t�n t
td|� d�tj�}|| |� d S )NZsp_� timestampZassert_Z_equal)�
isinstancer �tm�assert_index_equal�
startswithZassert_equal�pdZNaT�AssertionError�freq�getattrZassert_almost_equal)�result�expected�typ�version�
comparatorr r r
�compare_element0 s
r c
C sz t j|�} t� }xd| j� D ]X\}}xN|j� D ]B\}}| | | }d|� d|� �} |j| |d �} | ||||� q,W qW | S )NZcompare_�_r )r �read_pickle�globals�items�get)
�dataZvfr �mr �dv�dtr r r r r r
�compareC s
r' |