a
    1$e                     @   s   d Z ddlmZ ddlZddlZddlZddlZddlZddl	m
Z
 ddlmZ ddlZddlmZ eejed Zejdd	d
d Zeeed d Zejedd eD ddd Zedd Zejjejpejdddd Zdd Z dd Z!ejjej" dddd Z#dS ) zM
See generate_legacy_storage_files.py for the creation of the legacy files.

    )contextmanagerN)assert_geodataframe_equal)_compat)Pointdatamodule)scopec                  C   s   ddl m}  |  S )N   create_pickle_data)Zgenerate_legacy_storage_filesr   r
    r   Z/var/www/html/django/DPS/env/lib/python3.9/site-packages/geopandas/io/tests/test_pickle.pycurrent_pickle_data   s    r   picklez*.picklec                 C   s   g | ]}| d d qS )/)split).0pr   r   r   
<listcomp>        r   )paramsZidsc                 C   s   | j S N)param)requestr   r   r   legacy_pickle    s    r   c                 c   s2   t jj}| t j_zd V  W |t j_n
|t j_0 d S r   )	geopandasoptionsZ
use_pygeos)optionorigr   r   r   with_use_pygeos%   s
    r    z]shapely 2.0/pygeos-based unpickling currently only works for shapely-2.0/pygeos-written files)reasonc                 C   s2   t |}| D ]\}}| | }t|| qd S r   )pdread_pickleitemsr   )r   r   resultnamevalueexpectedr   r   r   test_legacy_pickles/   s    
r)   c                 C   sZ   |}|  D ]H\}}t| d| }|| t|}t|| t|jt	sJ qd S )Nz	{}.pickle)
r$   strformat	to_pickler"   r#   r   
isinstanceZ
has_sindexbool)tmpdirr   r   r&   r'   pathr%   r   r   r   test_round_trip_current>   s    


r1   c                   C   s0   t jg dtddtddtddgdddS )N)g?g?g333333?r	         )aZgeometryz	EPSG:4326)Zcrs)r   ZGeoDataFramer   r   r   r   r   _create_gdfI   s    $r5   zrequires pygeos to test #1745c                 C   sl  t d@ t }t| d }|| t|}t|| W d    n1 sN0    Y  t d, t }t| d }|| W d    n1 s0    Y  t d* t|}t }t|| W d    n1 s0    Y  t d, t }t| d }|| W d    n1 s0    Y  t d* t|}t }t|| W d    n1 s^0    Y  d S )NFzgdf_crs1.pickleT)r    r5   r*   r,   r"   r#   r   )r/   Zgdfr0   r%   r   r   r   test_pygeos_switchP   s,    


(
(

(
*

r6   )$__doc__
contextlibr   globospathlibZpandasr"   ZpytestZgeopandas.testingr   r   r   compatZshapely.geometryr   Pathr0   dirname__file__Z	DATA_PATHZfixturer   r*   filesr   r    markZskipifZUSE_SHAPELY_20Z
USE_PYGEOSr)   r1   r5   Z
HAS_PYGEOSr6   r   r   r   r   <module>   s6   



	

