
    hi0                     z   d dl mZmZmZmZmZmZmZ d dlm	Z	 d dl
mZ d dlmZ d dlZd dlZd dlZd Zd Zd\  ZZZd	 Zd
 Z G d d          Zd Zd gZ G d de          Z e            Zd Zd Zd Z e!dk    r> e              e              e              e              e              e              dS dS )    )baditems
badobjectsbadtypeserrorsparentat
globalvars)settings)IS_PYPY)PicklingErrorNc            	         t          j                    } t          |           | gk    sJ t          |           | u sJ t	          |           t          |           k    sJ t          t          |                     t          u sJ t	          | d          }t          |t                    sJ t          t          | d                                                    t          |                                          k    sJ t          t          | d                                                    t          |                                          k    sJ t          d t          t          | d                                                    D                       }t          |          }t          j                            d          sDt          | j                  t          u rdnd}t%          |          t%          |          |z   k    sJ d}d|                                v rt%          |          |u s
n|dz
  sJ d S d S )N   c                 @    g | ]}|j         j        |j        d          fS )r   )	__class____name__args).0errs     n/var/www/development/aibuddy-work/election-extract/venv/lib/python3.11/site-packages/dill/tests/test_detect.py
<listcomp>z#test_bad_things.<locals>.<listcomp>   s(    YYYccm$SXa[1YYY    COVERAGEr      r   )inspectcurrentframer   r   r   typer   	TypeError
isinstancedictlistkeyssetvaluesosenvirongetf_localslen)fdsaproxyns         r   test_bad_thingsr/      s   AA;;1#a==AA;;$q''!!!!q		??i''''AAa
1a  %%''((DNN::::q!!!##$$QVVXX6666YYT&A,,BUBUBWBW=X=XYYYZZAQA:>>*%% (!*%%--11vvQ%''''	A)QVVXX553q66Q;;;1Q3;;;;;;;r   c                  2   g d} t          |           }t          |t                    }|| u sJ t          rt          |t                    J nt          |t                    | d         u sJ t          t          t
                              t
          u sJ d S )N)            )iterr   r    r   intr   id)xlistiterobjs      r   test_parentr<   %   s    		AAwwH
4
 
 C!8888 +vc3''////S!!QrU****bff::r   )r   r      c                     t           | dz  z   S )Nr   r,   r9   s    r   squaredrA   1   s    	
1a4-r   c                       fd}|S )Nc                 (    t                    | z   S N)rA   )yr9   s    r   barzfoo.<locals>.bar5   s    1::a<r    )r9   rF   s   ` r   foorH   4   s!        	*r   c                       e Zd Zd Zd ZdS )_classc                     d S rD   rG   selfs    r   _methodz_class._method:       r   c                     dS )NTrG   rL   s    r   okz	_class.ok<   s    tr   N)r   
__module____qualname__rN   rQ   rG   r   r   rJ   rJ   9   s2              r   rJ   c                  f   d } t          |           t          ddd          k    sJ t          t          d          }t          |          t          dd	g          k    sJ t          t          d
          }|i k    sJ t          d          }t          |d          }t          |          t          dd	g          k    sJ t          |d
          }t          |          t          dg          k    sJ ~t          t                    }t          |          t          d	g          k    sJ d S )Nc                      t            d } d S )Nc                      t            d } d S )Nc                      t            d S rD   )crG   r   r   hz-test_globals.<locals>.f.<locals>.g.<locals>.hD   s    r   )b)rY   s    r   gz"test_globals.<locals>.f.<locals>.gB   s     A    r   r?   )r[   s    r   r)   ztest_globals.<locals>.f@   s     		 	 	 	 	r   r   r   r=   )r,   rZ   rX   TrecurserA   r,   F)r	   r   rH   r"   rA   )r)   reszaps      r   test_globalsr`   ?   s7      a==D1Q///////
S$
'
'
'Cs88sIs+,,,,,,
S%
(
(
(C"9999
a&&C
S$
'
'
'Cs88sIs+,,,,,,
S%
(
(
(Cs88sI;''''''
W

Cs88sC5zz!!!!!!r   c                        e Zd Zd Zd Zd ZdS )Fooc                     d S rD   rG   rL   s    r   __init__zFoo.__init__c   rO   r   c                 6    t           d         dz   t           d<   i S )Nr   r   )rF   rL   s    r   __getstate__zFoo.__getstate__e   s    QA	r   c                     d S rD   rG   )rM   datas     r   __setstate__zFoo.__setstate__h   rO   r   N)r   rR   rS   rd   rf   ri   rG   r   r   rb   rb   b   sA                r   rb   c                      ddl m} m}  | t                     t          d         } | d d           t          d         |k    sJ  | d d           t          d         |dz   k    sJ d S )	Nr   dumpsloadsc                      t           S rD   r)   rG   r   r   <lambda>ztest_getstate.<locals>.<lambda>q       ! r   Fr\   c                      t           S rD   ro   rG   r   r   rp   ztest_getstate.<locals>.<lambda>s   rq   r   Tr   )dillrl   rm   r)   rF   )rl   rm   rZ   s      r   test_getstatert   m   s    !!!!!!!!	E!HHHAA	E))U####q6Q;;;;	E))T""""q6QU??????r   c                      ddl m} m} ddlmam} d }dt          d<    | |          }t                                          d          adab ||          } |d          }dd	lma  |d          |k    sJ d S )
Nr   rk   )sinpic                 &    t          |           | z  S rD   rv   r@   s    r   sincztest_deleted.<locals>.sinc|   s    1vvaxr   Tr]   rv   r   ry   )	rs   rl   rm   mathrv   rw   r
   globalspop)rl   rm   rw   rz   _sincsinc_r^   s          r   test_deletedr   w   s    !!!!!!!!   HYE$KKE
))--

C
CE%LLE
%((C477c>>>>>>r   c                     	 ddl m} m} n# t          $ r Y d S w xY wdt          d<    | d          }|dz  } ||g|          }t
          }t                      }t          |dd           |t
          u sJ |t                      u sJ d S )Nr   )symbolslambdifyTr]   r9   r   )r]   builtin)sympyr   r   ImportErrorr
   minr|   r	   )r   r   r9   rE   r)   zr*   s          r   test_lambdifyr      s    +++++++++   HYA	1A!aAA		Aq$----8888		>>>>>>s    
__main__)"dill.detectr   r   r   r   r   r   r	   rs   r
   
dill._dillr   pickler   r   sysr$   r/   r<   r,   rZ   rX   rA   rH   rJ   r`   rF   objectrb   r)   rt   r   r   r   rG   r   r   <module>r      s   W V V V V V V V V V V V V V V V V V                          



 				? ? ?&   1a    
       " " "B 	c    &    CEE    &    zOKMMMLNNNMOOOLNNNMOOOOO r   