
    <i	                     R    S SK r S SK Jq  S SKJr  S SKJrJr  S SKr " S S\5      r	g)    N)Decimal)TestCase)StringIOreload_modulec                   H    \ 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)TestDecimal   )z1.0z10.001.1z1234567890.1234567890500c                     [        5       n[        R                  " X40 UD6  [        R                  " U40 UD6nU R	                  XCR                  5       5        U$ N)r   jsondumpdumpsassertEqualgetvalue)selfobjkwsioress        W/home/james-whalen/.local/lib/python3.13/site-packages/simplejson/tests/test_decimal.pyr   TestDecimal.dumps
   sF    j		#!b!jj##lln-
    c                     [        U5      n[        R                  " U40 UD6nU R                  U[        R                  " U40 UD65        U$ r   )r   r   loadsr   load)r   sr   r   r   s        r   r   TestDecimal.loads   sA    qkjj!b!dii2r23
r   c                     [        [        U R                  5       H,  nU R                  U R	                  USS9[        U5      5        M.     g )NTuse_decimal)mapr   NUMSr   r   str)r   ds     r   test_decimal_encodeTestDecimal.test_decimal_encode   s8    Wdii(ATZZtZ<c!fE )r   c                     U R                    H0  nU R                  U R                  U[        S9[        U5      5        M2     g )Nparse_float)r$   r   r   r   )r   r   s     r   test_decimal_decodeTestDecimal.test_decimal_decode   s1    ATZZwZ?L r   c           
          [        [        U R                  5       HC  nX0nU R                  U R	                  U R                  USS9[        S9[        U5      U05        ME     g )NTr!   r*   )r#   r   r$   r   r   r   r%   r   r&   vs      r   test_stringify_keyTestDecimal.test_stringify_key   s[    Wdii(AA

JJqdJ3  JQ )r   c                     [        [        U R                  5       HC  nX/SU04 H5  nU R                  U R	                  U R                  USS9[        S9U5        M7     ME     g )N Tr!   r*   )r#   r   r$   r   r   r   r/   s      r   test_decimal_roundtrip"TestDecimal.test_decimal_roundtrip'   sc    Wdii(A r1g&  JJ

1$
7W  N ' )r   c                 P   [        S5      nU R                  [        [        R                  USS9  U R                  S[        R                  " U5      5        U R                  S[        R                  " USS95        U R                  [        [        R                  U[        5       SS9  [        5       n[        R                  " X5        U R                  SUR                  5       5        [        5       n[        R                  " XSS9  U R                  SUR                  5       5        g )Nr
   Fr!   T)	r   assertRaises	TypeErrorr   r   r   r   r   r   )r   r&   r   s      r   test_decimal_defaults!TestDecimal.test_decimal_defaults1   s    EN)TZZF

1.

1$ ?@)TYY8:&+ 	 	-j		!/j		!d+/r   c                     [        [        5      R                  qSS Kn[        UR                  l        U R                  5         g )Nr   )r   decimalr   simplejson.encoderencoderr5   )r   
simplejsons     r   test_decimal_reloadTestDecimal.test_decimal_reload@   s1      (00!%,
"##%r    N)__name__
__module____qualname____firstlineno__r$   r   r   r'   r,   r1   r5   r:   rA   __static_attributes__rC   r   r   r   r      s1    @DFM0&r   r   )
r=   r   unittestr   simplejson.compatr   r   r@   r   r   rC   r   r   <module>rK      s        5 ?&( ?&r   