
    4j                        S SK Jr  S SKrS SKrS SKJr   S SKJr  S SK	J
r
  \
" SS/5      r\
" SS	S
/5      r " S S\5      r " S S\5      r " S S\5      r " S S\5      rS S S /r " S S\R(                  5      rg! \ a    Sr Nof = f)    )absolute_importN)StringIO)mock)
namedtupleValuevaluePointxyc                        \ rS rSrS rS rSrg)	DuckValue   c                     [        U6 U l        g N)r   r   selfargss     _/root/lseg-credit/backend/venv/lib/python3.13/site-packages/simplejson/tests/test_namedtuple.py__init__DuckValue.__init__       D\
    c                 6    U R                   R                  5       $ r   )r   _asdictr   s    r   r   DuckValue._asdict       zz!!##r   )r   N__name__
__module____qualname____firstlineno__r   r   __static_attributes__ r   r   r   r          "$r   r   c                        \ rS rSrS rS rSrg)	DuckPoint   c                     [        U6 U l        g r   )r	   pointr   s     r   r   DuckPoint.__init__   r   r   c                 6    U R                   R                  5       $ r   )r*   r   r   s    r   r   DuckPoint._asdict   r   r   )r*   Nr   r$   r   r   r'   r'      r%   r   r'   c                       \ rS rSrSrSrg)DeadDuck   Nr$   r   r    r!   r"   r   r#   r$   r   r   r/   r/          Gr   r/   c                       \ rS rSrSrSrg)DeadDict    Nr$   r1   r$   r   r   r4   r4       r2   r   r4   c                     U $ r   r$   vs    r   <lambda>r9   $   s    ar   c                     U /$ r   r$   r7   s    r   r9   r9   %   s    qcr   c                     SU 0/$ )Nkeyr$   r7   s    r   r9   r9   &   s
    qzlr   c                   J    \ rS rSrS rS rS rS rS rS r	S r
S	 rS
 rSrg)TestNamedTuple)   c                 V   [        S5      [        SS5      [        S5      [        SS5      4 H  nUR	                  5       nU R                  U[        R                  " [        R                  " U5      5      5        U R                  U[        R                  " [        R                  " USS95      5        U R                  U[        R                  " [        R                  " USS95      5        U R                  U[        R                  " [        R                  " USSS95      5        M     g N      Tnamedtuple_as_objectF)tuple_as_array)rE   rF   )	r   r	   r   r'   r   assertEqualjsonloadsdumps)r   r8   ds      r   test_namedtuple_dumps$TestNamedTuple.test_namedtuple_dumps*   s    (E!QK1yAGA		AQ

4::a= 9:

4::adCDF Q

4::a+N OP

4::ad5:< => Hr   c                    [        S5      [        SS5      4 Hl  n[        U5      nU R                  U[        R
                  " [        R                  " USS95      5        U R                  [        [        R                  USSS9  Mn     g NrB   rC   FrD   )rF   rE   )	r   r	   listrG   rH   rI   rJ   assertRaises	TypeError)r   r8   ls      r   test_namedtuple_dumps_false*TestNamedTuple.test_namedtuple_dumps_false7   sr    (E!QK(AQA

4::aeDEG iQ$5  B )r   c                 *   [        S5      [        SS5      [        S5      [        SS5      4 GHb  nUR	                  5       n[        5       n[        R                  " X5        U R                  U[        R                  " UR                  5       5      5        [        5       n[        R                  " XSS9  U R                  U[        R                  " UR                  5       5      5        [        5       n[        R                  " XSS9  U R                  U[        R                  " UR                  5       5      5        [        5       n[        R                  " XSSS9  U R                  U[        R                  " UR                  5       5      5        GMe     g rA   )r   r	   r   r'   r   r   rH   dumprG   rI   getvalue)r   r8   rK   sios       r   test_namedtuple_dump#TestNamedTuple.test_namedtuple_dump@   s   (E!QK1yAGA		A*CIIaQ

3<<> :;*CIIa48

3<<>*, *CIIaU3Q

3<<> :;*CIIa4%*,

3<<>*,! Hr   c           
      X   [        S5      [        SS5      4 H  n[        U5      n[        5       n[        R
                  " XSS9  U R                  U[        R                  " UR                  5       5      5        U R                  [        [        R
                  U[        5       SSS9  M     g rO   )r   r	   rP   r   rH   rW   rG   rI   rX   rQ   rR   )r   r8   rS   rY   s       r   test_namedtuple_dump_false)TestNamedTuple.test_namedtuple_dump_falseU   s    (E!QK(AQA*CIIa59

3<<>*, iAxz$5  B )r   c           	         [          H  nU R                  [        [        R                  U" [        5       5      [        5       SS9  [        5       n[        R                  " U" [        5       5      USS9  U R                  [        R                  " U" 0 5      5      UR                  5       5        U R                  [        [        R                  U" [        5      [        5       SS9  M     g NTrD   )CONSTRUCTORSrQ   rR   rH   rW   r/   r   r4   rG   rJ   rX   r   )r   frY   s      r   test_asdict_not_callable_dump,TestNamedTuple.test_asdict_not_callable_dump`   s    A		(*
%)   *CIIa
mStD

1R5!  		%
%)   r   c           
      x   [          H  nU R                  [        [        R                  U" [        5       5      SS9  U R                  [        [        R                  U" [        5      SS9  U R                  [        R                  " U" 0 5      5      [        R                  " U" [        5       5      SS95        M     g r`   )	ra   rQ   rR   rH   rJ   r/   r   rG   r4   r   rb   s     r   test_asdict_not_callable_dumps-TestNamedTuple.test_asdict_not_callable_dumpsv   s    Ai

AhjM  F

%%)	   

1R5!

1XZ=tDF r   c           	          [          H[  nU R                  [        R                  " U" [        5      S S9[        R                  " U" [        R
                  5      5      5        M]     g )Nc                     U R                   $ r   )r   r7   s    r   r9   ATestNamedTuple.test_asdict_unbound_method_dumps.<locals>.<lambda>   s    qzzr   )default)ra   rG   rH   rJ   r   r   rf   s     r    test_asdict_unbound_method_dumps/TestNamedTuple.test_asdict_unbound_method_dumps   sB    A

1U8-AB

1U^^,- r   c                    [         (       d  [        R                  " S5      e[         R                  " 5       nU R	                  [        US5      5        U R	                  [        UR                  5      5        U R                  [        UR                  5       [        5      5        U R                  [        5         [        R                  " SU0SSS9  S S S 5        g ! , (       d  f       g = f)Nzunittest.mock requiredr      TF)rE   for_json)r   unittestSkipTestMock
assertTruehasattrcallabler   assertFalse
isinstancedictrQ   rR   rH   rJ   )r   fakes     r    test_asdict_does_not_return_dict/TestNamedTuple.test_asdict_does_not_return_dict   s    t##$<==yy{i01./DLLND9: y)JJDzuM *))s   8C
C(c                     " S S[         5      n " S S[        5      n " S S[        5      n " S S[         5      nU R                  S	S
S/0[        R
                  " [        R                  " U" S
S/5      5      5      5        U R                  S	SS/0[        R
                  " [        R                  " U" S5      5      5      5        U R                  S	SS00[        R
                  " [        R                  " U" SS95      5      5        U R                  S	S
/0/[        R
                  " [        R                  " U" S
/5      /5      5      5        U R                  SS	S
/00[        R
                  " [        R                  " SU" S
/5      05      5      5        U R                  SS0[        R
                  " [        R                  " U" S/5      SS95      5        g )Nc                       \ rS rSrS rSrg)=TestNamedTuple.test_asdict_dispatch_order.<locals>.ListAsdict   c                     S[        U 5      0$ Nfrom_asdictrP   r   s    r   r   ETestNamedTuple.test_asdict_dispatch_order.<locals>.ListAsdict._asdict       %tDz22r   r$   Nr1   r$   r   r   
ListAsdictr          3r   r   c                       \ rS rSrS rSrg)>TestNamedTuple.test_asdict_dispatch_order.<locals>.TupleAsdict   c                     S[        U 5      0$ r   r   r   s    r   r   FTestNamedTuple.test_asdict_dispatch_order.<locals>.TupleAsdict._asdict   r   r   r$   Nr1   r$   r   r   TupleAsdictr      r   r   r   c                       \ rS rSrS rSrg)=TestNamedTuple.test_asdict_dispatch_order.<locals>.DictAsdict   c                     S[        U 5      0$ r   )rz   r   s    r   r   ETestNamedTuple.test_asdict_dispatch_order.<locals>.DictAsdict._asdict   r   r   r$   Nr1   r$   r   r   
DictAsdictr      r   r   r   c                        \ rS rSrS rS rSrg);TestNamedTuple.test_asdict_dispatch_order.<locals>.ListBoth   c                 
    SS0$ )Nr   Tr$   r   s    r   r   CTestNamedTuple.test_asdict_dispatch_order.<locals>.ListBoth._asdict   s    %t,,r   c                 
    SS0$ )Nfrom_for_jsonTr$   r   s    r   rq   DTestNamedTuple.test_asdict_dispatch_order.<locals>.ListBoth.for_json   s    '..r   r$   N)r   r    r!   r"   r   rq   r#   r$   r   r   ListBothr      s    -/r   r   r   
      rB   rC   )rB   rC   r
   )r
   kr   T)rq   )rP   tuplerz   rG   rH   rI   rJ   )r   r   r   r   r   s        r   test_asdict_dispatch_order)TestNamedTuple.test_asdict_dispatch_order   s   	3 	3	3% 	3	3 	3	/t 	/ 	RH%JJtzz*b"X"678	: 	QF#JJtzz+f"567	9 	S!H%JJtzz*q/23	5 	bT"#JJtzz:rd#3"456	8 	=2$'(JJtzz3
B4(8"9:;	= 	d#JJtzz(A3-$?@	Br   r$   N)r   r    r!   r"   rL   rT   rZ   r]   rc   rg   rm   r|   r   r#   r$   r   r   r>   r>   )   s4    >B,*	B,FN$1Br   r>   )
__future__r   rr   
simplejsonrH   simplejson.compatr   r   ImportErrorcollectionsr   r   r	   objectr   r'   r/   rz   r4   ra   TestCaser>   r$   r   r   <module>r      s    &   & #7WI&7S#J'$ $$ $v t  eBX&& eBC  Ds   B BB