o
    i                     @   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   ]/var/www/edux/Edux_v2/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 d| dd	d
ks<J tdk rCd}nd}| d|ksMJ t }| dksWJ t|d|jksaJ t|d|jkskJ t|d|j kswJ t|d|jksJ d S )Nr   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))>r   zfPOLYGON ((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.2GzPOLYGON EMPTY)r   bufferr#   r   r$   r%   r   r   )polyexpected_2Gemptyr   r   r   test_format_polygonN   s(   r=   )	r
   shapelyr   r   shapely.geosr   r   r6   r=   r   r   r   r   <module>   s    9