a
    1$e                     @   s  d dl Z d dlZd dlmZmZ d dlZd dlmZm	Z	 d dl
mZmZ d dlmZ d dlmZmZ d dlZeeg deg dgZeeg d	eg dgZe	eg d	eg dgZeeg d	eg dgZe	eZed
dgedZed
dgedZe Zde_e Zde_eeg deg dgZed
dge e e dddZed
dge e e dddZej !ddd Z"dd Z#dd Z$dd Z%dd Z&dd  Z'd!d" Z(d#d$ Z)dS )%    N)PointPolygon)	DataFrameSeries)GeoDataFrame	GeoSeries)from_shapely)assert_geodataframe_equalassert_geoseries_equal)r   r      r   r   r   r   r   )r   )   r   )r   r   )r   r   )r   r   r   r      r   col1geometryi  i4l  ))r      r   r   r   )r   r   geom2geom3  crs)r   r   r   r   zignore::UserWarningc                  C   s   t tt t ttddd t ttddd t ttdd tt} t ttdd W d    n1 sf0    Y  dt| j	v sJ dt| j	v sJ tt} t tt
dd W d    n1 s0    Y  dt| j	v sJ d	t| j	v sJ d S )
NF)check_series_typeZcheck_dtype)r   TZcheck_less_precisez*1 out of 2 geometries are not almost equalznot almost equal: [0]z#1 out of 2 geometries are not equalznot equal: [0])r
   s1s2s3s4pytestraisesAssertionErrorstrvalues6)error r(   X/var/www/html/django/DPS/env/lib/python3.9/site-packages/geopandas/tests/test_testing.pytest_geoseriesF   s    
,,r*   c                  C   s.  t tt tt t ttdd W d    n1 s80    Y  tt" t ttddg  W d    n1 st0    Y  t ttddg dd t } d| jd< tt t t|  W d    n1 s0    Y  t tt	dd dtj
_tt t tt	dd W d    n1 s 0    Y  d S )	NTr   r   r   )Z
check_like
   )r   r   r   )r	   df1df2r!   r"   r#   copylocdf5df4r   r   )Zdf3r(   r(   r)   test_geodataframeX   s    
,0
(r2   c                  C   s8   t tddtjg} t| |   t| |  dd d S )Nr   Tr   )r   r   npnanr
   r.   )sr(   r(   r)   test_equal_nansn   s    r6   c                  C   s:   t ddgtdd d} t ddgtdi d}t| | d S )Nr   r   r   r   )r   r   r	   )r,   r-   r(   r(   r)   test_no_crst   s    r7   c                  C   s   t ddgt ddd} t ddgtddd}tt t| | W d    n1 sZ0    Y  tjdd}t| |d	d
 W d    n1 s0    Y  t	|dksJ d S )Nr   r   r   z	EPSG:4326r   z
EPSG:31370T)recordF)Z	check_crsr   )
r   r   r.   r!   r"   r#   r	   warningscatch_warningslen)r,   r-   r8   r(   r(   r)   test_ignore_crs_mismatchz   s    (,r<   c                  C   sf   t tddg} t tddg}t| |dd tt t| | W d    n1 sX0    Y  d S )Nr   gHz>Tr   )r   r   r
   r!   r"   r#   )Zs_originZs_almost_originr(   r(   r)   test_almost_equal_but_not_equal   s
    r=   c                  C   s~   dd } |  }d |_ |  }d |_ t|| |  ddg }|  ddg }t|| t|  dg }t|  dg }t|| d S )Nc                  S   sB   t ddgtddtddgd} ttddtddg| d< | S )Nr   r   )r%   r   r   r   r   )r   r   r   Zgdfr(   r(   r)   create_dataframe   s    "zEtest_geodataframe_no_active_geometry_column.<locals>.create_dataframer%   r   )_geometry_column_namer	   r   r?   r,   r-   r(   r(   r)   +test_geodataframe_no_active_geometry_column   s    

rB   c                  C   sD   dd } |  }|  }t || |  }d |_|  }d |_t || d S )Nc                  S   sV   t tddtddgtddtddgg} t| d} tjdgddgg| _| S )Nr   r   r   r   r   )r   r   r   ZastypepdZ
MultiIndexZfrom_productcolumnsr>   r(   r(   r)   r?      s    ,z6test_geodataframe_multiindex.<locals>.create_dataframe)r	   r@   rA   r(   r(   r)   test_geodataframe_multiindex   s    
rE   )*r9   numpyr3   Zshapely.geometryr   r   ZpandasrC   r   r   Z	geopandasr   r   Zgeopandas.arrayr   Zgeopandas.testingr	   r
   r!   r   r   r   ar    r,   r-   r.   r   Zs5r&   r1   r0   markfilterwarningsr*   r2   r6   r7   r<   r=   rB   rE   r(   r(   r(   r)   <module>   sr   











