
    'i                     z    d dl Z d dlZd dlmZmZmZmZmZ d dlmZ ddl	m	Z	 dgZ
ed        Zd Ze	d	        Zd
 Zy)    N)curryidentity	keyfilter	valfilter
merge_with)raises   )dev_skip_testget_inc                 v    t        |dd      xs d}|j                  |       xs dt        t        |            v S )N
__module__ ztoolz.functoolz.curry)getattr
startswithstrtype)modnamefuncmods      N/var/www/br/venv/lib/python3.12/site-packages/cytoolz/tests/test_docstrings.py	isfrommodr      s7    
$b
)
/RC>>'"P&=T$Z&PP    c                     t        | d      r| j                  } | j                  dd      } | j                  dd      } | j                  dd      } | j                  dd	      } | j                  d
d      } | S )z- Convert docstring from `toolz` to `cytoolz`.__doc__toolzcytoolzdictcytoolz	dicttoolzfunccytoolz	functoolzitercytoolz	itertoolzzcytoolz.readthedocsztoolz.readthedocs)hasattrr   replace)docs    r   
convertdocr&      sl    sIkk
++gy
)C
++m[
1C
++m[
1C
++m[
1C
+++-@
ACJr   c                  2  
 dd l } t        j                         }t        t	        d      | j
                        t        t	        d      t        j
                        
t        d       t        
fd      t        fd
      
t        t        
      }|j                         D ]j  \  \  }}dj                  d t        |      j                         D              }dj                  d	 |j                  j                         D              }||vsnt        |j!                  |j                         |j                                     }t        |      }|r<|d   j#                  d
      r(|j%                  d       |r|d   j#                  d
      r(|r;|d   j#                  d
      r'|j%                          |r|d   j#                  d
      r'fd}	t'        t)        |	|            sGJ dj+                  dj                  |                    y )Nr   r   r   c                     t        | dd      S )Nr   r   )r   )xs    r   <lambda>z*test_docstrings_uptodate.<locals>.<lambda>,   s    WQ	2%> r   c                     | v S N )r)   cytoolz_dicts    r   r*   z*test_docstrings_uptodate.<locals>.<lambda>/   s    Q,%6 r   c                     | v S r,   r-   )r)   
toolz_dicts    r   r*   z*test_docstrings_uptodate.<locals>.<lambda>0   s    qJ r   
c              3   <   K   | ]  }|j                           y wr,   strip.0lines     r   	<genexpr>z+test_docstrings_uptodate.<locals>.<genexpr>7   s     [tdjjl[   c              3   <   K   | ]  }|j                           y wr,   r3   r5   s     r   r8   z+test_docstrings_uptodate.<locals>.<genexpr>8   s     [

[r9   +c                 H    | j                  d      xr d| v xr t        v  S )Nr;   z# doctest: +SKIP)r   skipped_doctests)r7   keys    r   checkbadz*test_docstrings_uptodate.<locals>.checkbadD   s4    , 6/47 5 $4467r   z*Error: cytoolz.{} has a bad docstring:
{}
)r   difflibDifferr   r   __dict__r   r   r   r   itemsjoinr&   
splitlinesr   listcomparer   popanymapformat)r   differd
toolz_funccytoolz_func	toolz_doccytoolz_docdifffulldiffr@   r.   r?   r0   s             @@@r   test_docstrings_uptodaterU   "   s   ^^F 9W-u~~>JYy173C3CDL >
KJ 6
CJ6EL8Z6A+,779 .''j, II[z*7M7X7X7Z[[	ii[9M9M9X9X9Z[[K'y';';'='2'='='?A BDDzH47--c2 47--c2 48..s3
 48..s37
 3x&'.LSS8,. .u/.r   c                  &    t        t        d        y )Nc                  4    t        j                  dgi d      S )NyT)
no_default)r   r   r-   r   r   r*   z%test_get_in_doctest.<locals>.<lambda>X   s    W^^SE2$G r   )r   KeyErrorr-   r   r   test_get_in_doctestr[   N   s     8GHr   )rA   r   r   r   r   r   r   cytoolz.utilsr   r
   r>   r   r&   rU   r[   r-   r   r   <module>r]      sW      E E   ( :  Q Q
	 (. (.V
Ir   