
    h                         d Z ddlZddlZddlmZ ddlZddlm	Z	 ddl
ZddlZej                  d        Zej                  d        Zd Zd Zd	 Zd
 Zd Zy)zCEnsure geopandas methods can be accessed via pandas 'geo' accessor.    N)Point)GeometryDtypec            
          t        j                  t        t        d      t        d            D  cg c]  \  } }t	        | |       c}} t                     S c c}} w )N   dtypepdSerieszipranger   r   xys     W/var/www/html/immo/lib/python3.12/site-packages/geopandas/tests/test_pandas_accessor.pysr      sA    99!$U1XuQx!89Aq!9 9s   A
c                      t        j                  t        t        d      t        d            D  cg c]  \  } }t	        | |dz          c}} t                     S c c}} w )Nr      r   r	   r   s     r   s2r      sE    99%(q58%<=TQq!a%=]_ =s   A
c                     | j                   j                  d      }t        |j                  t              sJ |j                   j                         }|j                  D ]  }||   dk\  rJ  y)z8Ensure returned geometry values have the expected dtype.g?g6<R?N)geobuffer
isinstancer   r   minimum_bounding_radiusindex)r   gotradiusrows       r   test_series_geo_bufferr      sa    
%%,,s
Ccii/// WW,,.F|| %c{f$$$%    c                     | j                   j                  |      }t        j                  j	                  |t        j                  g d             y )N)      ?r"   r"   )r   distancepandastestingassert_series_equalr
   r   )r   r   r   s      r   test_series_geo_distancer'   *   s5    
%%..
C
NN&&
		/"r    c                     | j                   j                  }t        j                  j	                  |t        j                  g d             y N)g        r"   g       @)r   r   r$   r%   r&   r
   r   )r   r   s     r   test_series_geo_xr*   2   0    	A
NN&&	
		/"r    c                      t        j                  g d      } t        j                  t        t        j                  d            5  | j                  j                   d d d        y # 1 sw Y   y xY w)N)r      r   z4Can only use .geo accessor with GeometryDtype values)match)	r
   r   pytestraisesAttributeErrorreescaper   r   )r   s    r   2test_series_geo_x_attributeerror_for_not_geo_dtyper4   :   sN    
		)A	iiNO
  	
	  s   A&&A/c                     | j                   j                  }t        j                  j	                  |t        j                  g d             y r)   )r   r   r$   r%   r&   r
   r   )r   r   s     r   test_series_geo_yr6   D   r+   r    )__doc__r2   r$   r
   shapely.geometryr   geopandas.accessors	geopandasgeopandas.arrayr   pandas.testingr/   fixturer   r   r   r'   r*   r4   r6    r    r   <module>r?      sh    I 	  "  )      %r    