
    4j                         S SK r S SKr " S S\5      r " S S\5      r " S S\5      r " S S	\5      r " S
 S\	5      r
 " S S\ R                  5      rg)    Nc                       \ rS rSrS rSrg)ForJson   c                 
    SS0$ )Nfor_json    selfs    ]/root/lseg-credit/backend/venv/lib/python3.13/site-packages/simplejson/tests/test_for_json.pyr   ForJson.for_json   s    A    r	   N__name__
__module____qualname____firstlineno__r   __static_attributes__r	   r   r   r   r      s    r   r   c                       \ rS rSrS rSrg)NestedForJson
   c                     S[        5       0$ Nnested)r   r
   s    r   r   NestedForJson.for_json   s    ')$$r   r	   Nr   r	   r   r   r   r   
   s    %r   r   c                       \ rS rSrS rSrg)ForJsonList   c                     S/$ Nlistr	   r
   s    r   r   ForJsonList.for_json   	    xr   r	   Nr   r	   r   r   r   r          r   r   c                       \ rS rSrS rSrg)DictForJson   c                 
    SS0$ )Nalphar   r	   r
   s    r   r   DictForJson.for_json   s    |r   r	   Nr   r	   r   r   r&   r&      s    r   r&   c                       \ rS rSrS rSrg)ListForJson   c                     S/$ r    r	   r
   s    r   r   ListForJson.for_json   r#   r   r	   Nr   r	   r   r   r,   r,      r$   r   r,   c                   f    \ rS rSrSS 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Srg)TestForJson   c                     Uc  [         R                  " U5      nO[         R                  " XS9nU R                  [         R                  " U5      U5        g )Nr   )jsondumpsassertEqualloads)r   objotherr   ss        r   assertRoundTripTestForJson.assertRoundTrip   s?    

3A

32AJJqM	r   c                 d    U R                  [        5       [        5       R                  5       5        g Nr<   r   r   r
   s    r   (test_for_json_encodes_stand_alone_object4TestForJson.test_for_json_encodes_stand_alone_object)   s#    II 	"r   c                 l    U R                  S[        5       0S[        5       R                  5       05        g )Nhoorayr@   r
   s    r   +test_for_json_encodes_object_nested_in_dict7TestForJson.test_for_json_encodes_object_nested_in_dict.   s-    wy!wy))+,	.r   c                 |    U R                  SS[        5       SS/0SS[        5       R                  5       SS/05        g )Nr!   r         r@   r
   s    r   7test_for_json_encodes_object_nested_in_list_within_dictCTestForJson.test_for_json_encodes_object_nested_in_list_within_dict3   s?    aAq)*a++-q!45	7r   c                 @    U R                  [        5       SSS005        g )Nr   r   r   )r<   r   r
   s    r   1test_for_json_encodes_object_nested_within_object=TestForJson.test_for_json_encodes_object_nested_within_object8   s!    O
A'	)r   c                 d    U R                  [        5       [        5       R                  5       5        g r?   r<   r   r   r
   s    r   test_for_json_encodes_list&TestForJson.test_for_json_encodes_list=   s#    MM""$	&r   c                 l    U R                  S[        5       0S[        5       R                  5       05        g r   rP   r
   s    r   (test_for_json_encodes_list_within_object4TestForJson.test_for_json_encodes_list_within_objectB   s-    {}%{}--/0	2r   c                 `    U R                  [        SS9[        SS9R                  5       5        g )Nr   a)r<   r&   r   r
   s    r   #test_for_json_encodes_dict_subclass/TestForJson.test_for_json_encodes_dict_subclassG   s)    !!%%'	)r   c                 l    U R                  [        S/5      [        S/5      R                  5       5        g )Nl)r<   r,   r   r
   s    r   #test_for_json_encodes_list_subclass/TestForJson.test_for_json_encodes_list_subclassL   s-    '')	+r   c                 J    S H  nU R                  [        SS9SS0US9  M     g )NNFr   rW   rX   r4   )r<   r&   r   r   s     r   4test_for_json_ignored_if_not_true_with_dict_subclass@TestForJson.test_for_json_ignored_if_not_true_with_dict_subclassQ   s1    %H  a a! ! # &r   c                 N    S H  nU R                  [        S/5      S/US9  M!     g )Nr`   r\   r4   )r<   r,   ra   s     r   4test_for_json_ignored_if_not_true_with_list_subclass@TestForJson.test_for_json_ignored_if_not_true_with_list_subclassX   s1    %H  SE"! ! # &r   c                     U R                  [        [        R                  [	        5       5        U R                  [        [        R                  [	        5       SS9  g )NFr4   )assertRaises	TypeErrorr5   r6   r   r
   s    r   6test_raises_typeerror_if_for_json_not_true_with_objectBTestForJson.test_raises_typeerror_if_for_json_not_true_with_object_   s7    )TZZ;)TZZUKr   c           	      T    " S S[         5      n[        [        4 HQ  nU R                  U[        R
                  U" SU5      SS9  U R                  U[        R
                  U" SU5      SS9  MS      " S S	[         5      nU R                  [        [        R
                  U" 5       SS9  g )
Nc                        \ rS rSrS rS rSrg)>TestForJson.test_getattr_exception_propagates.<locals>.BadAttrh   c                     Xl         X l        g r?   attrexc)r   rr   rs   s      r   __init__GTestForJson.test_getattr_exception_propagates.<locals>.BadAttr.__init__i   s     	r   c                 ^    XR                   :X  a  U R                  SU-   5      e[        U5      e)Nzfrom __getattr__: )rr   rs   AttributeErrorr   names     r   __getattr__JTestForJson.test_getattr_exception_propagates.<locals>.BadAttr.__getattr__l   s,    99$((#7$#>??$T**r   rq   N)r   r   r   r   rt   rz   r   r	   r   r   BadAttrrn   h   s    +r   r|   r   Tr4   _asdict)namedtuple_as_objectc                       \ rS rSrS rSrg)DTestForJson.test_getattr_exception_propagates.<locals>.NoJsonMethods|   c                     [        U5      er?   )rw   rx   s     r   rz   PTestForJson.test_getattr_exception_propagates.<locals>.NoJsonMethods.__getattr__}   s    $T**r   r	   N)r   r   r   r   rz   r   r	   r   r   NoJsonMethodsr   |   s    +r   r   )objectMemoryErrorRuntimeErrorrh   r5   r6   ri   )r   r|   exc_typer   s       r   !test_getattr_exception_propagates-TestForJson.test_getattr_exception_propagatesc   s    
	+f 	+ %l3H

GJ9D  J 

GIx8%)  +	 4	+F 	+ 	tzz=?T 	 	Cr   r	   N)T)r   r   r   r   r<   rA   rE   rJ   rM   rQ   rT   rY   r]   rb   re   rj   r   r   r	   r   r   r1   r1      sE    "
.
7
)
&
2
)
+
##LCr   r1   )unittest
simplejsonr5   r   r   r   r   dictr&   r!   r,   TestCaser1   r	   r   r   <module>r      s]     f 
%F %
& 
$ 
$ 
bC(## bCr   