
    <e                     D   d dl mZmZ d dlmZ d dlmZmZ dZdZ	dZ
dZ G d d	e          Zd
ZdZdez  Z G d dee          Z ed          Z ed          Z ed          Z G d dee          Z G d d          Z G d dee          Z G d dee          ZdS )    )EnumIntEnum)isnan)PyTestCTest   l        l            l               @ c                       e Zd ZeZeZeZe	Z
dS )BigNumN)__name__
__module____qualname__SMALLsmallBIGbigHUGEhugeREALLY_HUGEreally_huge     //usr/lib/python3.11/test/test_json/test_enum.pyr
   r
   
   s"        E
CDKKKr   r
   g
@g!	@   c                       e Zd ZeZeZeZdS )FloatNumN)	r   r   r   EePIpiTAUtaur   r   r   r   r      s        	A	B
CCCr   r   infz-infnanc                       e Zd ZeZeZeZdS )WierdNumN)	r   r   r   INFr"   NEG_INFneg_infNANr#   r   r   r   r%   r%      s        
CG
CCCr   r%   c                   2    e Zd Zd Zd Zd Zd Zd Zd ZdS )TestEnumc                 t   t           D ]}|                     |                     |          t          |j                             |                     t          |                     |                    |           |                     |                     |                     |                    |           d S N)r   assertEqualdumpsreprvaluefloatloadsselfenums     r   test_floatszTestEnum.test_floats$   s     	A 	ADTZZ--tDJ/?/?@@@U4::d#3#344d;;;TZZ

4(8(8994@@@@	A 	Ar   c           
         t          t          d          D ];\  }}|                     |                     |          |           t	          |          ss|                     t          |                     |                    |           |                     |                     |                     |                    |           |                     t	          t          |                     |                                         |                     t	          |                     |                     |                                         =d S )N)Infinity	-InfinityNaN)zipr%   r.   r/   r   r2   r3   
assertTrue)r5   r6   expecteds      r   test_weird_floatszTestEnum.test_weird_floats*   s   !(,LMM 	E 	END(TZZ--x888;; E  tzz$'7'7!8!8$???  DJJt,<,<!=!=tDDDDeDJJt,<,<&=&= > >???djjD1A1A&B&B C CDDDD	E 	Er   c                 t   t           D ]}|                     |                     |          t          |j                             |                     t          |                     |                    |           |                     |                     |                     |                    |           d S r-   )r
   r.   r/   strr1   intr3   r4   s     r   	test_intszTestEnum.test_ints4   s     	A 	ADTZZ--s4:???SD!1!122D999TZZ

4(8(8994@@@@	A 	Ar   c                    |                      |                     t          t                              t	          t
          t          t          t          g                     |                      | 	                    |                     t          t                                        t          t                               |                      |                     t          t                              t	          t          t          t          g                     |                      | 	                    |                     t          t                                        t          t                               |                      |                     t          t                              d           |                      | 	                    |                     t          t                                        d d         t          t                    d d                    |                     t!          | 	                    |                     t          t                                        d                              d S )Nz[Infinity, -Infinity, NaN]r   )r.   r/   listr
   rA   r   r   r   r   r3   r   r   r   r    r%   r=   r   )r5   s    r   	test_listzTestEnum.test_list:   s   DLL11eS$<==	? 	? 	?DJJtF||$<$<==f	' 	' 	'DNN33aS\**	, 	, 	,DJJtH~~$>$>??h	) 	) 	)DNN334	6 	6 	6DJJtH~~$>$>??Ch+	- 	- 	-djjDNN)C)CDDQGHHIIIIIr   c                    t           \  }}}}t          \  }}}t          \  }}	}
|d|d|d|d|d|d|d|d|	d	|
d
i
}|                     |                     |                    }|                     |t          t                             d           |                     |t          t                             d           |                     |t          t                             d           |                     |t          t                             d           |                     |t          t                             d           |                     |t          t                             d           |                     |t          t                             d           |                     |d         d           |                     |d	         d	           |                     |d
         d
           d S )NtinylargelargerlargestzEuler's numberr   r!   r9   r:   r;   )r
   r   r%   r3   r/   r.   rA   r   r   r   r   r0   r   r   r    )r5   sbhrr   ptijndnds                r   test_dict_keyszTestEnum.test_dict_keysI   s   
1a1a1afa8Qy$%j!K5
 ZZ

1&&CJJ000CHHw///CII111C,,-y999DGG&6777DHHt,,,DII...J444K+666EE*****r   c                    t          t          j        t          j        t          j        t          j        t          j        t          j        t          j	        t          j        t          j        t          j        
  
        }|                     |                     |                    }|                     |d         t"                     |                     |d         t$                     |                     |d         t&                     |                     |d         t(                     |                     |d         t*                     |                     |d         t,                     |                     |d         t.                     |                     |d	         t0                     |                     |d
         t2                     |                     t7          |d                              d S )N)
rH   rI   rJ   rK   r   r   r!   rR   rS   rT   rH   rI   rJ   rK   r   r   r!   rR   rS   rT   )dictr
   r   r   r   r   r   r   r   r!   r%   r"   r(   r#   r3   r/   r.   r   r   r   r   r   r   r    r&   r'   r=   r   )r5   rU   rV   s      r   test_dict_valueszTestEnum.test_dict_values^   ss   \j{**;L,",   ZZ

1&&FU+++Gc***Ht,,,I444C!$$$D2&&&EC(((C#&&&C'***bg'''''r   N)	r   r   r   r7   r?   rC   rF   rW   rZ   r   r   r   r+   r+   "   sz        A A AE E EA A AJ J J+ + +*( ( ( ( (r   r+   c                       e Zd ZdS )
TestPyEnumNr   r   r   r   r   r   r\   r\   w             r   r\   c                       e Zd ZdS )	TestCEnumNr]   r   r   r   r`   r`   x   r^   r   r`   N)r6   r   r   mathr   test.test_jsonr   r   r   r   r   r   r
   r   r   r    r2   r   r&   r'   r)   r%   r+   r\   r`   r   r   r   <module>rc      s                 ( ( ( ( ( ( ( (	    W    "f    ud   
 eEll
%--eEll    ud   
S( S( S( S( S( S( S( S(j ) ( ( ( (6 ( ( ( & & & & &% & & & & &r   