
    hi!                        d dl Z d dlmZ d dlZde j        d<    G d d          Z G d d          Z G d	 d
e          Z G d de          Z	 G d de
          Zd Zd Z edefeed          Z[[ e            Z e            Z e            Z e	            Z e            Zej        dk     rd dlZ G d dej        e                   Zn G d dee                   Zd Zd Zd Zd dlmZ  edddg          Z ed d          Z  edddg          Z!d e!_"        d e!_#         e!d d          Z$ ed!ddg          Z% e%d d          Z& ed"d#d$gdg%          Z' e'd&          Z(d' Z)d( Z*d) Z+d* Z,d+ Z- G d, de          Z.d-Z/ e.e/          Z0 G d. d/e          Z1d0 Z2d1 Z3d2 Z4d3 Z5d4 Z6d5 Z7e"d6k    r e              e              e              e)              e*              e+              e,              e-              e2              e3              e5              e6              e7             dS dS )7    N)EnumMetaTrecursec                       e Zd Zd Zd ZdS )_classc                     d S N selfs    p/var/www/development/aibuddy-work/election-extract/venv/lib/python3.11/site-packages/dill/tests/test_classdef.py_methodz_class._method           c                     dS NTr	   r
   s    r   okz	_class.ok       tr   N__name__
__module____qualname__r   r   r	   r   r   r   r      2              r   r   c                       e Zd Zd Zd ZdS )_class2c                     d S r   r	   r
   s    r   __call__z_class2.__call__   r   r   c                     dS r   r	   r
   s    r   r   z
_class2.ok   r   r   Nr   r   r   r   r   r	   r   r   r   r      r   r   r   c                       e Zd Zd Zd ZdS )	_newclassc                     d S r   r	   r
   s    r   r   z_newclass._method   r   r   c                     dS r   r	   r
   s    r   r   z_newclass.ok   r   r   Nr   r	   r   r   r    r       r   r   r    c                       e Zd Zd Zd ZdS )
_newclass2c                     d S r   r	   r
   s    r   r   z_newclass2.__call__"   r   r   c                     dS r   r	   r
   s    r   r   z_newclass2.ok$   r   r   Nr   r	   r   r   r$   r$   !   r   r   r$   c                       e Zd ZdS )_metaNr   r   r   r	   r   r   r(   r(   '   s        Dr   r(   c                     d S r   r	   r
   s    r   r   r   *   s    Dr   c                     dS r   r	   r
   s    r   r   r   ,   s    4r   _mclass)r   r   i  	c                       e Zd ZdS customIntListNr)   r	   r   r   r/   r/   <           r   r/   c                       e Zd ZdS r.   r)   r	   r   r   r/   r/   ?   r0   r   c                     t          j        t                    sJ t          j        t                    sJ t          j        t                    sJ t          j        t
                    sJ t          j        t                    sJ d S r   )dillpicklesoocnncmr	   r   r   test_class_instancesr:   C   sp    <??<<??<<??r   c                     t           t          t          t          t          g} t
          t          t          t          t          g}d | D             }d |D             }| D ](}t                                          |j                   )~ dD ]#}t                                          |           $~~t          ||          D ]\  }}t          j        |          }t          j        |          }|                                sJ |                     |                      sJ |j        dk    rt#          |          j        dk    sJ d S )Nc                 6    g | ]}t          j        |          S r	   r3   dumps.0objs     r   
<listcomp>z&test_class_objects.<locals>.<listcomp>M        333C
3333r   c                 6    g | ]}t          j        |          S r	   r=   r?   s     r   rB   z&test_class_objects.<locals>.<listcomp>N   rC   r   )r5   r6   r7   r8   r,   r(   )r   r   r    r$   r,   r5   r6   r7   r8   r9   globalspopr   zipr3   loadsr   type)clslistobjlist_clslist_objlistrA   cls_cls_objs           r   test_class_objectsrQ   J   s;   gi
7;GAbmG337333H337333H $ $		cl####"  		cx)) 2 2Cz#z#wwyywwttvv=I%%::&'11112 2r   c                  <   t          j        t          d                     sJ t          j        t          t                              sJ t          j        t          t                              sJ t          j        t          t
                              sJ d S r   )r3   r4   rI   NotImplementedEllipsisr   r	   r   r   test_specialtypesrU   a   sz    <T

#####<^,,-----<X'''''<X'''''''r   )
namedtupleZab   YXFakeNameDefaultsxy)defaults   c                  z   t           t          j        t          j        t                               u sJ t          t          j        t          j        t                              k    sJ t
          t          j        t          j        t
                              u sJ t          t          j        t          j        t                              k    sJ t          t          j        t          j        t                              u sJ t          t          j        t          j        t                              k    sJ t          t          j        t          j        t                              usJ t          j
        t          j        t          j        t                              j
        k    sJ t          t                    t          t          j        t          j        t                                        k    sJ  G d d          }  |             }t          j        |          sJ t          j        | j                  j        dk    sJ t          j        | j                  j                            d          sJ t          j        | j                  j        dk    sJ t          j        | j                  j        dk    sJ ddlm fd	} t-          t          j          |             d
                              j        t-            |             d
                    j        k    sJ d S )Nc            	       P    e Zd Z G d d edddg                    Zde_        dS )test_namedtuple.<locals>.Ac                       e Zd ZdZdS )test_namedtuple.<locals>.A.B	docstringN)r   r   r   __doc__r	   r   r   Brg      s        OOOr   rj   ConetwotestingN)r   r   r   rV   rj   r	   r   r   Are      sO        	 	 	 	 	

3// 	 	 	 r   ro   rj   z.<locals>.A.Brh   rn   r   )
NamedTuplec                  $     G d d          } | S )Nc                       e Zd ZU eed<   dS )%test_namedtuple.<locals>.A.<locals>.Br_   N)r   r   r   int__annotations__r	   r   r   rj   rs      s         FFFFFr   rj   r	   )rj   rp   s    r   ro   ztest_namedtuple.<locals>.A   s2    	 	 	 	 	
 	 	 	r      )rW   r3   rH   r>   Zir\   Xir^   	DefaultsiBad_fieldstupleBadicopyrj   r   r   endswithri   r   typingrp   rI   )ro   rX   rp   s     @r   test_namedtupler   t   s   
4:a==))))))DJrNN++++++
4:a==))))))DJrNN++++++tz$*X"6"6777777
4:i#8#8999999djC111111;$*TZ__55=====;;%
4:d+;+; < <======! ! ! ! ! ! ! !
 	
A9Q<<9QS>>"c))))9QS>>&//@@@@@9QS>>![00009QS>>$	1111!!!!!!    
 	#!!##a&&!!""/4A<<3LLLLLLLr   c                      	 dd l } |                     d          }| j        t          j        | j                  k    sJ |t          j        |          k    sJ d S # t          $ r Y d S w xY w)Nr   rt   )numpydtyper3   r~   ImportError)npdtis     r   
test_dtyper      sy    hhuoox49RX......dinn$$$$$$s   AA 
A)(A)c                      	 dd l } |                     dg          }|f}|t          j        |          k    sJ d S # t          $ r Y d S w xY w)Nr   rZ   )r   arrayr3   r~   r   )r   r_   r`   s      r   test_array_nestedr      sc    HHaSMMDDIaLL      s   7; 
A	A	c                     	 dd l  G fddj                  }  |                     d          d          }t          j        j        s:t          j        |          sJ |j        t          j        |          j        k    sJ |dd         }t          j        j        s:t          j        |          sJ |j        t          j        |          j        k    sJ  G d d	j                  } |g d
          }d|_	        t          j        j        s:t          j        |          sJ |j        t          j        |          j        k    sJ d S d S # t          $ r Y d S w xY w)Nr   c                   *    e Zd Z fdZd Z fdZdS )&test_array_subclass.<locals>.TestArrayc                 f                         |                              |           }||_        |S r   )asarrayviewcolor)rN   input_arrayr   rA   r   s       r   __new__z.test_array_subclass.<locals>.TestArray.__new__   s.    jj--22377!	
r   c                 d    |d S t          |t          |                     r|j        | _        d S d S r   )
isinstancerI   r   )r   rA   s     r   __array_finalize__z9test_array_subclass.<locals>.TestArray.__array_finalize__   s;    ;Fc4::.. +!$DJJJ+ +r   c                 <                         |           | j        fS r   )r   r   )r   r   s    r   __getnewargs__z5test_array_subclass.<locals>.TestArray.__getnewargs__   s    zz$''33r   N)r   r   r   r   r   r   )r   s   r   	TestArrayr      sV            + + +
4 4 4 4 4 4 4r   r   d   green)r   	   c                       e Zd ZdZdS )'test_array_subclass.<locals>.TestArray2blueN)r   r   r   r   r	   r   r   
TestArray2r      s        EEEr   r   )rZ   rb            )r   ndarrayzerosr3   _dillIS_PYPYr4   __dict__r~   r   r   )r   a1a2r   a3r   s        @r   test_array_subclassr      s   #	4 	4 	4 	4 	4 	4 	4
 	4 	4 	4 Yrxx}}G444z! 	9<#####;$)B--"88888!Wz! 	9<#####;$)B--"88888	 	 	 	 	 	 	 	 Z$$z! 	9<#####;$)B--"88888	9 	988s   EE 
E E c                       G d dt                     }  |             }t          j        |          }t          j        |          }|j                                         d S )Nc                   $    e Zd Zed             ZdS ) test_method_decorator.<locals>.Ac                     d S r   r	   )rN   s    r   testz%test_method_decorator.<locals>.A.test   s    r   N)r   r   r   classmethodr   r	   r   r   ro   r      s-          {  r   ro   )objectr3   r>   rH   	__class__r   )ro   rX   resnew_objs       r   test_method_decoratorr      sn        F   
 	
A
*Q--CjooGr   c                       e Zd ZdZd ZdS )r[   )r`   __weakref__c                     || _         d S r   r`   r   r`   s     r   __init__z
Y.__init__       DFFFr   Nr   r   r   	__slots__r   r	   r   r   r[   r[      s(        ")    r   {   c                       e Zd ZdZd ZdS )Y2r`   c                     || _         d S r   r   r   s     r   r   zY2.__init__   r   r   Nr   r	   r   r   r   r      s(        )    r   r   c                  p   t          j        t                    sJ t          j        t                    sJ t          j        t          j                  sJ t          j        t                    j        t
          k    sJ t          j        t          t
                              j        t
          k    sJ d S r   )r3   r4   r[   r`   r~   valuer   r	   r   r   
test_slotsr      s    <??<??<9Q<<>U""""9RYY!U******r   c                  b    t          j        t                    j        t          j        k    sJ d S r   )r3   r~   r/   __orig_bases__r	   r   r   test_origbasesr      s)    9]##2m6RRRRRRRr   c                      dd l j         G fdd                      }  | d          }t          j        |          |k    sJ d S )Nr   c                   8    e Zd Z                                 ZdS )test_attr.<locals>.AN)r   r   r   ibrX   )attrs   r   ro   r      s        GGIIr   ro   rZ   )r   sr3   r~   )ro   vr   s     @r   	test_attrr      sx    KKK	V         V 	
!A9Q<<1r   c                       G d dt                     } t                      }t          dd |           |d         }t          j         |                      sJ d S )Nc                   $     e Zd Z fdZd Z xZS )*test_metaclass.<locals>.metaclass_with_newc                 x     t                      j        | |||fi |}| J |                    |           sJ |S r   )superr   method)mclsnamebasesnskwdsrN   r   s         r   r   z2test_metaclass.<locals>.metaclass_with_new.__new__   sO    !%''/$eR@@4@@C###::d#####Jr   c                 "    t          | |          S r   )r   )rN   r   s     r   r   z1test_metaclass.<locals>.metaclass_with_new.method  s    c4(((r   )r   r   r   r   r   __classcell__)r   s   @r   metaclass_with_newr      sG        	 	 	 	 	
	) 	) 	) 	) 	) 	) 	)r   r   zclass subclass_with_new(metaclass=metaclass_with_new):
        def __new__(cls):
            self = super().__new__(cls)
            return selfsubclass_with_new)rI   localsexecr3   r~   )r   lr   s      r   test_metaclassr      s    ) ) ) ) )T ) ) ) 	A 
 !!% % % -.9&&(()))))))r   c                      ddl m}  dd l}t          j        | j                  | j        u sJ t          j        |j                  |j        u sJ d S )Nr   )
HTTPStatus)httpr   enumr3   r~   OKr   )r   r   s     r   test_enummetar     sa    KKK9Z]##z}44449T]##t}444444r   c                      G d d          }  G d d|           }t          j        |          }dd l}|                                dk    }|j        |j        k    sJ d|j        v r	d|j        v sJ |j        d         |j        d         u sJ d|j        v r	d|j        v sJ |j        d         |j        d         u sJ d	|j        v r	d	|j        v sJ |j        d	         |j        d	         u }|r|sn|rJ d
|j        v r	d
|j        v sJ |j        d
         |j        d
         u }|r|sn|rJ d|j        v r	d|j        v sJ |j        d         |j        d         u sJ d|j        v r	d|j        v sJ |j        d         |j        d         usJ d|j        v r	d|j        v sJ |j        d         |j        d         usJ d|j        v r	d|j        v sJ |j        d         |j        d         u sJ d S )Nc                   &    e Zd ZdZdZdZdZdZdZdS )test_inherit.<locals>.Foor   rZ   皙?r	   rZ   N)	r   r   r   wr_   r`   rX   rY   r7   r	   r   r   Foor     s,        r   r   c                   .    e Zd ZdZdZdZdZdZdZdZ	dZ
dS )	test_inherit.<locals>.Barrb   rZ   r   g?r	   r   )rb   N)r   r   r   r   r_   r`   zrX   rY   cr7   r	   r   r   Barr      s6        r   r   r   PyPyr   r_   r`   r   rX   rY   r   r7   )r3   r~   platformpython_implementationr   )r   r   Bazr   is_pypysames         r   test_inheritr     s              c    )C..COOO,,..&8G<3<''''#,3#,#6#6#6#6<S 11111#,3#,#6#6#6#6<S 11111#,3#,#6#6#6#6<S 11D(4((D(((#,3#,#6#6#6#6<S 11D(4((D(((#,3#,#6#6#6#6<S 11111#,3#,#6#6#6#6<CL$55555#,3#,#6#6#6#6<CL$55555#,3#,#6#6#6#6<S 1111111r   __main__)8r3   r   r   syssettingsr   r   r   r    r$   rI   r(   r   r   r,   r5   r6   r7   r8   r9   
hexversionr   Listrt   r/   listr:   rQ   rU   collectionsrV   rW   rw   r\   r   r   rx   rz   r}   r^   ry   r   r   r   r   r   r[   r   r`   r   r   r   r   r   r   r   r	   r   r   <module>r     s          



i                             	 	 	 	 	D 	 	 		 	 	   %	F982&F&F
G
G
FHHWYYIKKZ\\GII>JMMM    C(        S	     2 2 2.( ( ( # " " " " "JsSIQqVVJsSI
QqVVjc#Y''
s1Qxx:j3*s;;;HQKK	M M MB    $ $ $N
 
 
       
 	AeHH       
+ + +S S S  * * *&5 5 5-2 -2 -2` zOJLLLJLLLNNMOOOLNNNNN r   