
    \i                     $   S SK r S SKrS SKJr  S SKJr  S SKJrJr  S SK	J
r
  S SKrS SKrS SKrS SKJrJr  \R$                  S 5       r\R$                  S 5       rS	 rS
 rS rS r " S S5      rS r\R6                  R9                  S/ SQ5      S 5       r\R6                  R9                  S/ SQ5      S 5       r\R6                  R9                  SSS/5      S 5       r\R6                  R9                  SSS/5      S 5       r \S 5       r!S r"S r#S r$\R6                  R9                  S\RJ                  " S\&S940 4S S!\RJ                  " S\&S904S"/40 4S S!S"/04S S#\RJ                  " S\'S904S S$\RJ                  " S\'S904/5      S% 5       r(g)&    N)cleandoc)chain)ascii_lettersdigits)mock)multithreading_enabledrequires_geosc               #      #    [         R                  R                  [        R                  SSS9   Sv   S S S 5        g ! , (       d  f       g = f7f)Ngeos_version)   
      )new3.10.1)r   patchobjectshapelylib     Z/var/www/html/kml_chatgpt/mouzaenv/lib/python3.13/site-packages/shapely/tests/test_misc.pymocked_geos_versionr      s3     			7;;J		G 
H	G	Gs   .A>	A
AAc               #   \   #    S[         R                  S'   S v   [         R                  S	 g 7f)N1SPHINX_DOC_BUILD)osenvironr   r   r   sphinx_doc_buildr      s$     %(BJJ!"	


%&s   *,c                  N    [        [        R                  [        5      (       d   eg N)
isinstancer   __version__strr   r   r   test_versionr$      s    g))3////r   c                     SR                   " [        R                  6 n [        R                  n[	        S U 5       5      (       aB  US   R                  5       (       a  UR                  [        5      nUR                  [        5      nX:X  d   eg )Nz{}.{}.{}c              3   @   #    U  H  oR                  5       v   M     g 7fr    isalpha.0cs     r   	<genexpr>$test_geos_version.<locals>.<genexpr>%   s     
'199;;   )	formatr   r   geos_version_stringany	isnumericrstripr   r   )expectedactuals     r   test_geos_versionr7       sq      '"6"67H((F 
'
'''":!!]]6*F}-r   c                     SR                   " [        R                  [        R                  -   6 n [        R                  R                  S5      u  nn[        S U 5       5      (       aB  US   R                  5       (       a  UR                  [        5      nUR                  [        5      nUR                  [        5      nU SU 3U :X  d   eg )Nz{}.{}.{}-CAPI-{}.{}.{}z-CAPI-c              3   @   #    U  H  oR                  5       v   M     g 7fr    r'   r)   s     r   r,   )test_geos_capi_version.<locals>.<genexpr>8   s     
4 3199;; 3r.   r/   )r0   r   r   geos_capi_versiongeos_capi_version_stringsplitr2   r3   r4   r   r   )r5   actual_geos_versionactual_geos_api_versions      r   test_geos_capi_versionr@   -   s    '..


!:!:
:H 	((..x8 
4 3
444r",,.."5"<"<V"D188G-44]C!"&)@(ABhNNNr   c                      gz?Docstring that will be mocked.
A multiline.

Some description.
Nr   r   r   r   funcrC   A       r   c                       \ rS rSrS rSrg)	SomeClassI   c                     grB   r   )selfs    r   rC   SomeClass.funcJ   rD   r   r   N)__name__
__module____qualname____firstlineno__rC   __static_attributes__r   r   r   rF   rF   I   s    r   rF   c                  t    SR                   " S0 U D6n[        R                  S S S:  a  [        U5      S-   $ U$ )NzDocstring that will be mocked.
{indent}A multiline.

{indent}.. note:: 'func' requires at least GEOS {version}.

{indent}Some description.
{indent}   )r      
r   )r0   sysversion_infor   )kwdsdocs     r   expected_docstringrX   R   sQ     F  C w& }t##Jr   version)3.10.0r   z3.9.2c                 R    [        U 5      " [        5      nU" 5         U[        L d   eg r    )r	   rC   rY   r   wrappeds      r   test_requires_geos_okr^   b   s"    G$T*GId??r   )z3.10.2z3.11.0z3.11.1c                     [        U 5      " [        5      n[        R                  " [        R
                  R                  5         U" 5         S S S 5        UR                  [        U SS9:X  d   eg ! , (       d  f       N)= f)N    rY   indent)	r	   rC   pytestraisesr   errorsUnsupportedGEOSVersionError__doc__rX   r\   s      r   test_requires_geos_not_okrh   i   sX    G$T*G	w~~AA	B	 
C ??0QQQQ 
C	Bs   A//
A=z3.9.0rZ   c                 b    [        U 5      " [        5      nUR                  [        U SS9:X  d   eg)z8The requires_geos decorator always adapts the docstring.r`   ra   N)r	   rC   rg   rX   rY   r   r   r]   s       r   test_requires_geos_doc_buildrk   r   s-     G$T*G??0QQQQr   c                 v    [        U 5      " [        R                  5      nUR                  [	        U SS9:X  d   eg)z@The requires_geos decorator adjusts methods docstrings correctlyz        ra   N)r	   rF   rC   rg   rX   rj   s       r   test_requires_geos_methodrm   z   s1     G$Y^^4G??0QQQQr   c                 v    [        XR                  5       5       H  n[        US5      (       d  M  XS'   Us  $    g )N__setitem__r   )r   valueshasattr)valueargskwargsargs       r   set_first_elementrv      s0    T==?+3&&FJ ,r   c                      [         R                  " S[        S9n [        R                  " [
        5         [        SU 5        S S S 5        SU S'   U S   S:X  d   eg ! , (       d  f       N= f)Nr   dtype*   r   )npemptyr   rc   rd   
ValueErrorrv   arrs    r   &test_multithreading_enabled_raises_argr      sS    
((4v
&C 
z	""c" 
# CFq6R<< 
#	"s   A
A(c                      [         R                  " S[        S9n [        R                  " [
        5         [        SU S9  S S S 5        U R                  R                  (       d   eg ! , (       d  f       N,= f)Nrx   ry   r{   r   )	r|   r}   r   rc   rd   r~   rv   flags	writeabler   s    r   (test_multithreading_enabled_raises_kwargr      sM    
((4v
&C 
z	""#& 
# 99	 
#	"s   A%%
A3c                     [         R                  " S[        S9n SU R                  l        [
        R                  " [        5         [        SU 5        S S S 5        U R                  R                  (       a   eg ! , (       d  f       N,= f)Nrx   ry   Fr{   )	r|   r}   r   r   r   rc   rd   r~   rv   r   s    r   *test_multithreading_enabled_preserves_flagr      s\    
((4v
&CCII 
z	""c" 
# yy"""""	 
#	"s   A88
Bzargs,kwargsrx   ry   r   ar   outwherec                 8    [        S/U Q70 UD6nUS   S:X  d   eg )Nr{   r   )rv   )rs   rt   results      r   test_multithreading_enabled_okr      s(     r3D3F3F!9??r   ))r   rT   inspectr   	itertoolsr   stringr   r   unittestr   numpyr|   rc   r   shapely.decoratorsr   r	   fixturer   r   r$   r7   r@   rC   rF   rX   markparametrizer^   rh   rk   rm   rv   r   r   r   r}   floatr   r   r   r   r   <module>r      s   	 
   (     D  
 ' '0
O(   $AB C $BCR DR Wh$78R 9R Wh$78R 9R  		# 
((4u
%	',	c288D./0#	cA3Z	eRXXd&123bhht623	

r   