o
    ÎjŽ  ã                   @   sN   d Z ddlZddlZddlZddlmZ ddlmZmZ G dd„ dejƒZ	dS )zTest GEOS predicatesé    N)Úgeos_version)ÚPointÚPolygonc                   @   s,   e Zd Zdd„ Zdd„ Zdd„ Zdd„ Zd	S )
ÚPredicatesTestCasec                 C   s  t ddƒ}t ddƒ}| t ddƒ¡sJ ‚| t ddƒ¡rJ ‚| t ddƒ¡r(J ‚| t ddƒ¡r2J ‚| t ddƒ¡r<J ‚| t ddƒ¡rFJ ‚| t ddƒ¡rPJ ‚| t ddƒ¡sZJ ‚| t ddƒ¡sdJ ‚| t ddƒ¡snJ ‚| |¡ruJ ‚| |¡r|J ‚| t ddƒ¡r†J ‚d S )Nç        g       @g      ð¿)	r   ZdisjointZtouchesZcrossesÚwithinÚcontainsÚequalsZcoversZ
covered_by)ÚselfÚpointZpoint2© r   úe/var/www/html/Deteccion_Ine/venv/lib/python3.10/site-packages/shapely/tests/legacy/test_predicates.pyÚtest_binary_predicates   s   

z)PredicatesTestCase.test_binary_predicatesc                 C   s@   t ddƒ}|jr
J ‚|jsJ ‚|jsJ ‚|jrJ ‚|jrJ ‚d S )Nr   )r   Zis_emptyÚis_validZ	is_simpleZis_ringZhas_z)r
   r   r   r   r   Útest_unary_predicates   s   




z(PredicatesTestCase.test_unary_predicatesc                 C   sŠ   g d¢}g d¢}t |ƒ}t |ƒ}|jrJ ‚|jrJ ‚tdk r<t tj¡ | |¡ W d   ƒ d S 1 s5w   Y  d S | |¡rCJ ‚d S )N)
©éS  éZ  )éË  r   )é  é7  )iT  é  )r   é­   )é  éò   )r   éŸ  )r   é}  )éÌ  éÏ   r   )©r   r   )r   r   )r   éŠ   )r   r   )r   r   )r   r   )r   r   )é  r   )i  r   )r!   r   )r   iÂ  r   )é   é   r   )r   r   r   ÚpytestÚraisesÚshapelyÚGEOSExceptionr   )r
   Úp1Zp2Úg1Úg2r   r   r   Ú test_binary_predicate_exceptions(   s   

"ÿz3PredicatesTestCase.test_binary_predicate_exceptionsc                 C   sæ   t g d¢ƒ}t g d¢ƒ}tddƒ}| |¡dksJ ‚| |d¡s"J ‚| |d¡s*J ‚| |d¡s2J ‚| |d¡s:J ‚| |d¡rBJ ‚| |d	¡rJJ ‚| |d
¡sRJ ‚tjtjdd | |d¡ W d   ƒ d S 1 slw   Y  d S )N)©r   r   )r   é   )r"   r-   )r"   r   r,   )©r-   éÿÿÿÿ)r-   é   )r0   r0   )r0   r/   r.   é   Z	212101212z	*********z	2********z	T********Z	112101212z	1********Z	FF2FF10F2ZIllegalArgumentException)ÚmatchZfail)r   r   ZrelateZrelate_patternr$   r%   r&   r'   )r
   r)   r*   Zg3r   r   r   Útest_relate_patternN   s   
"ÿz&PredicatesTestCase.test_relate_patternN)Ú__name__Ú
__module__Ú__qualname__r   r   r+   r3   r   r   r   r   r      s
    	&r   )
Ú__doc__Zunittestr$   r&   r   Zshapely.geometryr   r   ZTestCaser   r   r   r   r   Ú<module>   s    