o
    Jf                     @   s@   d dl Z d dlmZmZ d dlmZ dd Zdd Zdd	 ZdS )
    N)PointPolygon)geos_versionc               	   C   sz   t dd} dtdfdtdfdtdfdtdfg}|D ]!\}}}tj||d	 t| | W d    n1 s5w   Y  qd S )
N      5Gzinvalid format specifierz.fz0.2ez.1xz-hex representation does not specify precision)match)r   
ValueErrorpytestraisesformat)pt	test_listformat_specerrr    r   n/home/deployuser/azure_apps/autowriter/venv/lib/python3.10/site-packages/shapely/tests/geometry/test_format.pytest_format_invalid   s   
r   c               	   C   s  d} d}d}d| ddfd| ddfd	|d
dfdt dt d fddfg}tdk r@|d| ddfd| ddfd| ddfd|ddfg7 }n|d| ddfd| ddfd| ddfd|ddfd|ddfg7 }|ddd d!d"d#d$d"d%dfd&|d'j| dfd|d(dfg7 }|D ]\}}}}t| }| |jksJ t|d)|jksJ t|d*|j ksJ t|d+|jksJ t|||ksJ |||d,d! |d% }	g }
t||		 D ]\}}tt ||}|r||ksJ |q|

||k q|st|
rJ |d-| q~d S ).N)g^F7ݚ?geB)gj=&=egZ`2)iD	 iI L   z.0fzPOINT (0 12345678901)Tz.1fzPOINT (0.1 12345678901.2)z0.2fzPOINT (-169.91 -19.00)z.3FinfzPOINT (INF -INF)   
   r   z.1gzPOINT (0.1 1e+10)z.6GzPOINT (0.123457 1.23457E+10)z0.12gz$POINT (0.123456789012 12345678901.2)z0.4gzPOINT (-169.9 -19)Fz#POINT (0.123457 12345678901.234568)z)POINT (0.123456789012 12345678901.234568)gzPOINT (-169.910918 -18.997564)z0.2gzPOINT (-169.91 -19)f)r   r   zPOINT (r   z.16f r   )Fz!POINT Z ({:.16f} {:.16f} {:.16f})zPOINT Z (630084 4833438 76) xX(z with )floatr   r   r   wktwkb_hexlowerindexzipsplitappendall)xy1xy2xyz3r   r   coordsexpt_wktsame_python_floatr   text_coordsis_samecoord
expt_coordpy_fmt_floatr   r   r   test_format_point   sZ   












r6   c                  C   s.  t dddd} |  | jksJ t| d| jksJ t| d| j ks'J t| d| jks1J tdk rAd| d	d
dks@J nd| d	d
dksLJ tdk rY| ddksXJ n| ddksaJ t }| dkskJ t|d|jksuJ t|d|jksJ t|d|j ksJ t|d|jksJ d S )Nr   r   r   r   r   r    )r      r   <z.2f>z|<POLYGON ((10.00 0.00, 7.07 -7.07, 0.00 -10.00, -7.07 -7.07, -10.00 -0.00, -7.07 7.07, -0.00 10.00, 7.07 7.07, 10.00 0.00))>zz<POLYGON ((10.00 0.00, 7.07 -7.07, 0.00 -10.00, -7.07 -7.07, -10.00 0.00, -7.07 7.07, 0.00 10.00, 7.07 7.07, 10.00 0.00))>r   z.2GzfPOLYGON ((10 0, 7.1 -7.1, 1.6E-14 -10, -7.1 -7.1, -10 -3.2E-14, -7.1 7.1, -4.6E-14 10, 7.1 7.1, 10 0))zZPOLYGON ((10 0, 7.07 -7.07, 0 -10, -7.07 -7.07, -10 0, -7.07 7.07, 0 10, 7.07 7.07, 10 0))zPOLYGON EMPTY)r   bufferr#   r   r$   r%   r   r   )polyemptyr   r   r   test_format_polygonN   s2   

r=   )	r
   shapelyr   r   shapely.geosr   r   r6   r=   r   r   r   r   <module>   s    9