
    DUf                        d dl mZ d dlZd dlZd dlmZ 	 d dlmZ n# e$ r dZY nw xY w	 d dl	m
Z
  e
ddg          Z e
dd	d
g          Zn'# e$ r  G d de          Z G d de          ZY nw xY w G d de          Z G d de          Z G d de          Z G d de          Zd d d gZ G d dej                  ZdS )    )absolute_importN)StringIO)mock)
namedtupleValuevaluePointxyc                       e Zd Zd Zd ZdS )r   c                 8    t                               | |          S Ntuple__new__clsargss     ]/var/www/html/software/conda/lib/python3.11/site-packages/simplejson/tests/test_namedtuple.pyr   zValue.__new__       ==d+++    c                     d| d         iS )Nr   r    selfs    r   _asdictzValue._asdict   s    T!W%%r   N__name__
__module____qualname__r   r   r   r   r   r   r      s2        	, 	, 	,	& 	& 	& 	& 	&r   c                       e Zd Zd Zd ZdS )r	   c                 8    t                               | |          S r   r   r   s     r   r   zPoint.__new__   r   r   c                 $    | d         | d         dS )Nr      )r
   r   r   r   s    r   r   zPoint._asdict   s    atAw///r   Nr   r   r   r   r	   r	      s2        	, 	, 	,	0 	0 	0 	0 	0r   c                       e Zd Zd Zd ZdS )	DuckValuec                 "    t          | | _        d S r   )r   r   r   r   s     r   __init__zDuckValue.__init__       D\


r   c                 4    | j                                         S r   )r   r   r   s    r   r   zDuckValue._asdict"       z!!###r   Nr   r   r    r)   r   r   r   r   r&   r&      2        " " "$ $ $ $ $r   r&   c                       e Zd Zd Zd ZdS )	DuckPointc                 "    t          | | _        d S r   )r	   pointr(   s     r   r)   zDuckPoint.__init__&   r*   r   c                 4    | j                                         S r   )r2   r   r   s    r   r   zDuckPoint._asdict)   r,   r   Nr-   r   r   r   r0   r0   %   r.   r   r0   c                       e Zd ZdZdS )DeadDuckNr   r   r    r   r   r   r   r5   r5   ,           GGGr   r5   c                       e Zd ZdZdS )DeadDictNr6   r   r   r   r9   r9   /   r7   r   r9   c                     | S r   r   vs    r   <lambda>r=   3   s    a r   c                     | gS r   r   r;   s    r   r=   r=   4   s    qc r   c                     d| igS )Nkeyr   r;   s    r   r=   r=   5   s    qzl r   c                   >    e Zd Zd Zd Zd Zd Zd Zd Zd Z	d Z
d	S )
TestNamedTuplec                    t          d          t          dd          t          d          t          dd          fD ]}|                                }|                     |t          j        t          j        |                               |                     |t          j        t          j        |d                               |                     |t          j        t          j        |d                               |                     |t          j        t          j        |dd                               d S Nr$      Tnamedtuple_as_objectF)tuple_as_array)rG   rH   )	r   r	   r&   r0   r   assertEqualjsonloadsdumps)r   r<   ds      r   test_namedtuple_dumpsz$TestNamedTuple.test_namedtuple_dumps9   s)   ((E!QKK1yAG 
	> 
	>A		AQ
4:a== 9 9:::
4:adCCCDDF F F Q
4:a+N+N+N O OPPP
4:ad5:< < < = => > > >
	> 
	>r   c           
      2   t          d          t          dd          fD ]v}t          |          }|                     |t	          j        t	          j        |d                               |                     t          t          j        |dd           wd S Nr$   rE   FrF   )rH   rG   )	r   r	   listrI   rJ   rK   rL   assertRaises	TypeError)r   r<   ls      r   test_namedtuple_dumps_falsez*TestNamedTuple.test_namedtuple_dumps_falseF   s    ((E!QKK( 	B 	BAQA
4:aeDDDEEG G G iQ$5  B B B B	B 	Br   c                    t          d          t          dd          t          d          t          dd          fD ]}|                                }t                      }t          j        ||           |                     |t          j	        |
                                                     t                      }t          j        ||d           |                     |t          j	        |
                                                     t                      }t          j        ||d           |                     |t          j	        |
                                                     t                      }t          j        ||dd           |                     |t          j	        |
                                                     d S rD   )r   r	   r&   r0   r   r   rJ   dumprI   rK   getvalue)r   r<   rM   sios       r   test_namedtuple_dumpz#TestNamedTuple.test_namedtuple_dumpO   s   ((E!QKK1yAG 	, 	,A		A**CIaQ
3<<>> : :;;;**CIa48888
3<<>>**, , , **CIaU3333Q
3<<>> : :;;;**CIa4%*, , , ,
3<<>>**, , , ,!	, 	,r   c           	         t          d          t          dd          fD ]}t          |          }t                      }t	          j        ||d           |                     |t	          j        |                                                     | 	                    t          t          j        |t                      dd           d S rP   )r   r	   rQ   r   rJ   rW   rI   rK   rX   rR   rS   )r   r<   rT   rY   s       r   test_namedtuple_dump_falsez)TestNamedTuple.test_namedtuple_dump_falsed   s    ((E!QKK( 	B 	BAQA**CIa59999
3<<>>**, , , iAxzz$5  B B B B	B 	Br   c           	      2   t           D ]}|                     t          t          j         |t                                t                      d           t                      }t          j         |t                                |d           |                     t          j	         |i                     |
                                           |                     t          t          j         |t                    t                      d           d S NTrF   )CONSTRUCTORSrR   rS   rJ   rW   r5   r   r9   rI   rL   rX   r   )r   frY   s      r   test_asdict_not_callable_dumpz,TestNamedTuple.test_asdict_not_callable_dumpo   s     	 	A	(**

%)     **CIaa

mmStDDDD
11R55!!      	%

%)     	 	r   c           
         t           D ]}|                     t          t          j         |t                                d           |                     t          t          j         |t                    d           |                     t          j         |i                     t          j         |t                                d                     d S r^   )	r_   rR   rS   rJ   rL   r5   r   rI   r9   r   r`   s     r   test_asdict_not_callable_dumpsz-TestNamedTuple.test_asdict_not_callable_dumps   s     	F 	FAi
AAhjjMM  F F F
%%)	     
11R55!!
11XZZ==tDDDF F F F	F 	Fr   c           	          t           D ]`}|                     t          j         |t                    d           t          j         |t          j                                       ad S )Nc                     | j         S r   )r   r;   s    r   r=   zATestNamedTuple.test_asdict_unbound_method_dumps.<locals>.<lambda>   s    qz r   )default)r_   rI   rJ   rL   r   r   rc   s     r    test_asdict_unbound_method_dumpsz/TestNamedTuple.test_asdict_unbound_method_dumps   so     	 	A
11U88-A-ABBB
11U^,,--   	 	r   c                 N   t           s:t          t          d          rt          j        d          t	          d           d S t          j                    }|                     t          |d                     |                     t          |j                             | 	                    t          |                                t                               |                     t                    5  t          j        d|idd           d d d            d S # 1 swxY w Y   d S )	NSkipTestzunittest.mock requiredzunittest.mock not availabler      TF)rG   for_json)r   hasattrunittestrj   printMock
assertTruecallabler   assertFalse
isinstancedictrR   rS   rJ   rL   )r   fakes     r    test_asdict_does_not_return_dictz/TestNamedTuple.test_asdict_does_not_return_dict   sT    	x,, '(@AAA3444y{{i00111..///DLLNND99::: y)) 	N 	NJDzuMMMM	N 	N 	N 	N 	N 	N 	N 	N 	N 	N 	N 	N 	N 	N 	N 	N 	N 	Ns   3DD!DN)r   r   r    rN   rU   rZ   r\   ra   rd   rh   rw   r   r   r   rB   rB   8   s        > > >B B B, , ,*	B 	B 	B  ,F F F  N N N N Nr   rB   )
__future__r   rn   
simplejsonrJ   simplejson.compatr   r   ImportErrorcollectionsr   r   r	   r   objectr&   r0   r5   ru   r9   r_   TestCaserB   r   r   r   <module>r      sF   & & & & & &      & & & & & &   DDD,&&&&&& Jw	**EJwc
++EE  0 0 0& & & & & & & &0 0 0 0 0 0 0 0 0 00"$ $ $ $ $ $ $ $$ $ $ $ $ $ $ $    v       t    KMvN vN vN vN vNX& vN vN vN vN vNs    ''A !A10A1