o
    HXhb                     @   s  d dl mZ d dlmZmZ d dlmZ d dlZd dlZd dl	Z	d dl
Z
G dd dejZG dd dejZG d	d
 d
eZG dd deZG dd deZG dd deZG dd deZG dd dejZG dd dejZG dd deeZG dd deeZG dd deeZG dd deeZG dd  d ejZG d!d" d"eeZG d#d$ d$ejZG d%d& d&ejZG d'd( d(eZG d)d* d*eeZG d+d, d,eeZ G d-d. d.eeZ!G d/d0 d0eZ"G d1d2 d2ee"Z#G d3d4 d4ee"Z$G d5d6 d6ee"Z%e&d7kr	e'  dS dS )8    )Decimal)verbose
is_android)check_warningsNc                   @   s    e Zd Zedd Zdd ZdS )BaseLocalizedTestc              
   C   s   t jdkrdd l}d}t| jdd dk rtdnt j	dr(d}nd	}z7t
t
j}|D ]}z	t
t
j| W n
 t
jyH   Y q3w  n
td
d| || _W t
t
j| d S t
t
j| w )Ndarwinr   )en_US.UTF-8en_US.ISO8859-1en_US.
   z#Locale support on MacOSX is minimalwin)ZEnZEnglish)r   r	   en_US.US-ASCIIr
   z$Test locale not supported (tried %s)z, )sysplatformosintunamereleasesplitunittestSkipTest
startswithlocale	setlocale
LC_NUMERICErrorjoinenUS_locale)clsr   Ztlocs	oldlocaleZtloc r!   :/opt/python-3.10.19/usr/lib/python3.10/test/test_locale.py
setUpClass   s.   

"zBaseLocalizedTest.setUpClassc                 C   sN   t | j}| t j| j| t | j| j tr%td| j ddd d S d S )Nztesting with %r... Tendflush)r   r   locale_type
addCleanupr   r   print)selfr    r!   r!   r"   setUp-   s   zBaseLocalizedTest.setUpN)__name__
__module____qualname__classmethodr#   r,   r!   r!   r!   r"   r   
   s    
r   c                   @      e Zd Zdd Zdd ZdS )BaseCookedTestc                 C   s   | j t_d S N)cooked_valuesr   _override_localeconvr+   r!   r!   r"   r,   :   s   zBaseCookedTest.setUpc                 C   s
   i t _d S r3   )r   r5   r6   r!   r!   r"   tearDown=   s   
zBaseCookedTest.tearDownN)r-   r.   r/   r,   r7   r!   r!   r!   r"   r2   5   s    r2   c                   @   s~   e Zd Zi dddddddg ddd	dd
ddg ddddddddddddddddddddiZdS )CCookedTestcurrency_symbol decimal_pointr   frac_digits   groupingint_curr_symbolint_frac_digitsmon_decimal_pointmon_groupingmon_thousands_sepn_cs_precedesn_sep_by_spacen_sign_posnnegative_signp_cs_precedesp_sep_by_spacep_sign_posnpositive_signthousands_sepNr-   r.   r/   r4   r!   r!   r!   r"   r8   @   sL    	

r8   c                   @   s   e Zd Zi dddddddg dd	d
dddddg dddddddddddddddddddddiZdS )EnUSCookedTestr9   $r;   r   r<      r>      rR   r   r?   zUSD r@   rA   rB   rC   ,rD      rE   r   rF   rG   -rH   rI   rJ   rK   r:   rL   NrM   r!   r!   r!   r"   rN   X   sL    	

rN   c                   @   s   e Zd Zi dddddddg dd	d
dddddg dddddddddddddddddddddiZdS )FrFRCookedTestr9      €r;   rS   r<   rP   r>   rQ   r?   zEUR r@   rA   rB   rC   r$   rD   r   rE   rT   rF   rG   rU   rH   rI   rJ   rK   r:   rL   NrM   r!   r!   r!   r"   rV   q   sL    	

rV   c                   @   s,   e Zd Zdd Zdd Zdd Zdd Zd	S )
BaseFormattingTestc                 K   s   |  |||fi || d S r3   )assertEqual)r+   formatvalueoutfuncformat_optsr!   r!   r"   _test_formatfunc   s   z#BaseFormattingTest._test_formatfuncc                 K   sN   t dtf | j|||fdtji| W d    d S 1 s w   Y  d S )Nr:   r]   )r   DeprecationWarningr_   r   rZ   r+   rZ   r[   r\   r^   r!   r!   r"   _test_format   s   "zBaseFormattingTest._test_formatc                 K   s    | j |||fdtji| d S )Nr]   )r_   r   format_stringra   r!   r!   r"   _test_format_string   s
   
z&BaseFormattingTest._test_format_stringc                 K   s   |  tj|fi || d S r3   )rY   r   currency)r+   r[   r\   r^   r!   r!   r"   _test_currency   s   z!BaseFormattingTest._test_currencyN)r-   r.   r/   r_   rb   rd   rf   r!   r!   r!   r"   rX      s
    rX   c                   @   sT   e Zd Zdd Zdd Zdd Zdd Zd	d
 Zdd Zdd Z	dd Z
dd ZdS )EnUSNumberFormattingc                 C   s   t  d | _d S )NrL   )r   
localeconvsepr6   r!   r!   r"   r,      s   zEnUSNumberFormatting.setUpc                 C   sR   | j dddd| j d | j ddddd | j dddd	d | j d
ddd	d d S )N%f   rT   z1%s024.000000r>   r\   f   
102.000000
-42.000000%+frb   ri   r6   r!   r!   r"   test_grouping   s   z"EnUSNumberFormatting.test_groupingc                 C   sb   | j dddddd | jr/| j dddd	| j d
d | j dddd	| j d
d d S d S )N%20.fro   rT   -42   rl   %+10.f-4%s200r   %-10.f)rb   rjustri   ljustr6   r!   r!   r"   test_grouping_and_padding   s   


z.EnUSNumberFormatting.test_grouping_and_paddingc                 C   sL   | j dddd| j d | j dddd| j d | j dddd	| j d d S )
N%dh  T4%s200rl   z%+dz+4%s200rx   ry   rr   r6   r!   r!   r"   test_integer_grouping      z*EnUSNumberFormatting.test_integer_groupingc                 C   s@   | j dddd| j dd | j dddd	| j dd d S )
N%10dr   Tr   r   rl   %-10drx   ry   )rb   ri   r{   r|   r6   r!   r!   r"   !test_integer_grouping_and_padding   s   


z6EnUSNumberFormatting.test_integer_grouping_and_paddingc                 C   sL   | j ddddd | j ddddd | j dddd	d | j d
ddd	d d S )Nrj   rk   r   z1024.000000rl   rm   rn   ro   rp   rq   rb   r6   r!   r!   r"   test_simple   s   z EnUSNumberFormatting.test_simplec                 C   sL   | j dddddd | j dddd	d
d | j ddddd
d d S )Nrt   ro   r   ru   rv   rl   rw   rx   z-4200r   rz   r   Z4200rb   r{   r|   r6   r!   r!   r"   test_padding   r   z!EnUSNumberFormatting.test_paddingc                 C   s@   |  t tjdddd W d    d S 1 sw   Y  d S )Nrz   r   Tr>   )ZassertWarnsr`   r   rZ   r6   r!   r!   r"   test_format_deprecation   s   "z,EnUSNumberFormatting.test_format_deprecationc                 C   s   | j dddd| j| jf d | j dddd| j| jf d | j dd	d
d | jr:| j ddddd| j d d | j dddddd | jrX| j dddd| j dd | jrl| j dddd| j| jf d d S d S )NzOne million is %ii@B rT   zOne million is 1%s000%s000rl   zOne  million is %izOne  million is 1%s000%s000z.%f.     @@z.1000.000000.r\   z-->  %10.2fr   z-->  z	4%s200.00r   z%10.*f)rP     r   z1000.00z%*.*f)r   rP   r   z	1%s000.00zint %i float %.2f str %s)r   r   strz"int 1%s000 float 1%s000.00 str str)rd   ri   r{   r6   r!   r!   r"   test_complex_formatting   s4   






z,EnUSNumberFormatting.test_complex_formattingN)r-   r.   r/   r,   rs   r}   r   r   r   r   r   r   r!   r!   r!   r"   rg      s    rg   c                   @      e Zd Zdd ZdS )TestFormatPatternArgc                 C   s   t dtfH | ttjdd | ttjdd | ttjdd | ttjdd | ttjdd | ttjdd | ttjd	d W d    d S 1 sQw   Y  d S )
Nr:   z%f
fooz%fz%f
z %fz%fgz%^g%f%%)r   r`   assertRaises
ValueErrorr   rZ   r6   r!   r!   r"   test_onlyOnePattern   s   "z(TestFormatPatternArg.test_onlyOnePatternN)r-   r.   r/   r   r!   r!   r!   r"   r      s    r   c                   @   s    e Zd ZdZdd Zdd ZdS )TestLocaleFormatStringz%General tests on locale.format_stringc                 C   sT   |  tdddd  |  tdddd  |  tdddidddi  d S )Nr         ?z%d %f%%d)rT   r   z%(foo)s %%dr   barrY   r   rc   r6   r!   r!   r"   test_percent_escape   s   
z*TestLocaleFormatString.test_percent_escapec                 C   sD   |  tdddidddi  |  tdddidddi  d S )Nz%(foo)s bing.r   r   z%(foo)sr   r6   r!   r!   r"   test_mapping  s   

z#TestLocaleFormatString.test_mappingN)r-   r.   r/   __doc__r   r   r!   r!   r!   r"   r      s    r   c                   @   s   e Zd ZejZdd ZdS )TestNumberFormattingc                 C      t |  t|  d S r3   )r   r,   rg   r6   r!   r!   r"   r,        
zTestNumberFormatting.setUpN)r-   r.   r/   r   r   r(   r,   r!   r!   r!   r"   r     s    r   c                   @   r1   )TestEnUSNumberFormattingc                 C   r   r3   )rN   r,   rg   r6   r!   r!   r"   r,     r   zTestEnUSNumberFormatting.setUpc                 C   s2   |  dd | j dddd | j ddddd d S )NP  z	$50000.00z
$50,000.00Tr   zUSD 50,000.00r>   internationalrf   r6   r!   r!   r"   test_currency  s
   
z&TestEnUSNumberFormatting.test_currencyN)r-   r.   r/   r,   r   r!   r!   r!   r"   r     s    r   c                   @   r1   )TestCNumberFormattingc                 C      | j ddddd d S )N%.2f)\@Tz12345.67rl   r   r6   r!   r!   r"   rs   &     z#TestCNumberFormatting.test_groupingc                 C   r   )N%9.2fr   Tz	 12345.67rl   r   r6   r!   r!   r"   r}   )  r   z/TestCNumberFormatting.test_grouping_and_paddingN)r-   r.   r/   rs   r}   r!   r!   r!   r"   r   #  s    r   c                   @   s<   e Zd Zdd Zdd Zdd Zdd Zd	d
 Zdd ZdS )TestFrFRNumberFormattingc                 C   s   | j dddd d S )Nr   r   z12345,67r   r   r6   r!   r!   r"   test_decimal_point0  s   z+TestFrFRNumberFormatting.test_decimal_pointc                 C   (   | j ddddd | j ddddd d S )Nr   Qu@T345,67rl   r   	12 345,67r   r6   r!   r!   r"   rs   3     z&TestFrFRNumberFormatting.test_groupingc                 C   s   | j ddddd | j ddddd | j dd	dd
d | j dd	dd
d | j dd	ddd | j ddddd | j ddddd | j dd	dd
d | j dd	dd
d | j dd	ddd d S )Nz%6.2fr   Tr   rl   z%7.2fz 345,67z%8.2fr   r   r   z%10.2fz
 12 345,67z%-6.2fz%-7.2fz345,67 z%-8.2fz%-9.2fz%-10.2fz
12 345,67 r   r6   r!   r!   r"   r}   7  s   z2TestFrFRNumberFormatting.test_grouping_and_paddingc                 C   r   )Nr~      TZ200rl   r   4 200r   r6   r!   r!   r"   r   C  r   z.TestFrFRNumberFormatting.test_integer_groupingc                 C   s|   | j ddddd | j ddddd | j dddddd | j d	dddd | j d
dddd | j dddddd d S )Nz%4dr   Tr   rl   z%5dr   r   z%-4dz%-5dr   r   r6   r!   r!   r"   r   G  s   z:TestFrFRNumberFormatting.test_integer_grouping_and_paddingc                 C   s>   d}|  dd|  | j dd| dd | j ddddd d S )	NrW   r   z	50000,00 z
50 000,00 Tr   z50 000,00 EURr   r   )r+   euror!   r!   r"   r   O  s   
z&TestFrFRNumberFormatting.test_currencyN)	r-   r.   r/   r   rs   r}   r   r   r   r!   r!   r!   r"   r   -  s    r   c                   @   r1   )TestCollationc                 C   sd   |  tddd | tddd | tddd | ttjdd | ttjdd d S )Nabr   a )
assertLessr   strcollrY   ZassertGreaterr   r   r6   r!   r!   r"   test_strcollZ  s
   zTestCollation.test_strcollc                 C   s,   |  tdtd | ttjd d S )Nr   r   r   )r   r   strxfrmr   r   r6   r!   r!   r"   test_strxfrmb  s   zTestCollation.test_strxfrmN)r-   r.   r/   r   r   r!   r!   r!   r"   r   W  s    r   c                   @   sR   e Zd ZejZdd Zee	j
dddd Zee	j
dddd Zd	S )
TestEnUSCollationc                 C   sb   t tdpdj}|dvrtd|dkr*tjdks%t	s%tj
dr*tdt|  d S )	NFascii)zutf-8	iso8859-1cp1252zencoding not suitabler   r   Zfreebsdzwcscoll/wcsxfrm have known bugs)codecslookupr   getpreferredencodingnamer   r   r   r   r   r   r   r,   r+   encr!   r!   r"   r,   m  s   


zTestEnUSCollation.setUpZaixzbpo-29972: broken test on AIXc                 C   s   |  tddd d S )N   àr   r   )r   r   r   r6   r!   r!   r"   test_strcoll_with_diacriticv  s   z-TestEnUSCollation.test_strcoll_with_diacriticc                 C   s   |  tdtd d S )Nr   r   )r   r   r   r6   r!   r!   r"   test_strxfrm_with_diacritic{  s   z-TestEnUSCollation.test_strxfrm_with_diacriticN)r-   r.   r/   r   LC_ALLr(   r,   r   ZskipIfr   r   r   r   r   r!   r!   r!   r"   r   h  s    	
r   c                   @   sl   e Zd Zdd Zdd Zdd Zdd Zd	d
 Zdd Zdd Z	dd Z
dd Zdd Zdd Zdd ZdS )NormalizeTestc                 C   s   | j t|||d d S )N)msg)rY   r   	normalize)r+   
localenameZexpectedr!   r!   r"   check     zNormalizeTest.checkc              	   C   sT   t j D ]"\}}| j||fd | || W d    n1 s"w   Y  qd S )N)r   )r   locale_aliasitemsZsubTestr   )r+   r   aliasr!   r!   r"   test_locale_alias  s   zNormalizeTest.test_locale_aliasc                 C      |  dd d S )Nr:   r   r6   r!   r!   r"   
test_empty     zNormalizeTest.test_emptyc                 C      |  dd |  dd d S )NcCposixr   r6   r!   r!   r"   test_c     zNormalizeTest.test_cc                 C   s   |  dd |  dd |  dd |  dd |  dd |  dd |  d	d	 |  d
d	 |  dd	 |  dd |  dd |  dd |  dd |  dd |  dd d S )Nenr	   ZENzen.iso88591r
   en_usen_GBzen_GB.ISO8859-1r   z
en_US.utf8zen_US:UTF-8r   zen_US.88591zen_US.885915en_US.ISO8859-15englishzen_EN.ISO8859-1zenglish_uk.asciir   r6   r!   r!   r"   test_english  s   zNormalizeTest.test_englishc                 C   s   |  dd |  dd |  dd |  dd |  dd |  dd |  dd |  dd	 |  d
d	 |  dd |  dd |  dd |  dd d S )Nzaz_AZ.iso88599ezaz_AZ.ISO8859-9Eztt_RU.koi8cztt_RU.KOI8-Czlo_LA.cp1133zlo_LA.IBM-CP1133zlo_LA.ibmcp1133zuk_ua.microsoftcp1251zuk_UA.CP1251zuk_ua.microsoft-cp1251zka_ge.georgianacademyzka_GE.GEORGIAN-ACADEMYzcs_CZ.iso88592zcs_CZ.ISO8859-2r   r6   r!   r!   r"   test_hyphenated_encoding  s   z&NormalizeTest.test_hyphenated_encodingc                 C   s(   |  dd |  dd |  dd d S )Nz
de_DE@eurozde_DE.ISO8859-15zen_US.ISO8859-15@euror   zde_DE.utf8@eurozde_DE.UTF-8r   r6   r!   r!   r"   test_euro_modifier     z NormalizeTest.test_euro_modifierc                 C   s(   |  dd |  dd |  dd d S )Nzbe_BY.UTF-8@latinzsr_RS.UTF-8@latinzsr_RS.UTF-8@latnr   r6   r!   r!   r"   test_latin_modifier  r   z!NormalizeTest.test_latin_modifierc                 C   s(   |  dd |  dd |  dd d S )Nzca_ES.UTF-8@valenciazca_ES@valenciazca@valenciazca_ES.ISO8859-1@valenciar   r6   r!   r!   r"   test_valencia_modifier  r   z$NormalizeTest.test_valencia_modifierc                 C   s   |  dd |  dd |  dd |  dd |  dd |  dd |  dd |  dd |  d	d |  d
d
 |  dd
 |  dd
 d S )Nzks_IN.UTF-8@devanagarizks_IN@devanagarizks@devanagarizks_IN.UTF-8Zks_INkszsd_IN.UTF-8@devanagarizsd_IN@devanagarizsd@devanagarizsd_IN.UTF-8Zsd_INsdr   r6   r!   r!   r"   test_devanagari_modifier  s   z&NormalizeTest.test_devanagari_modifierc                 C   sX   |  dd |  dd |  dd |  dd |  dd |  d	d
 |  dd
 d S )N	ja_jp.eucja_JP.eucJPja_jp.eucjpz	ko_kr.euczko_KR.eucKRzko_kr.euckrz	zh_cn.euczzh_CN.eucCNz	zh_tw.euczzh_TW.eucTWzzh_tw.euctwr   r6   r!   r!   r"   test_euc_encoding  s   zNormalizeTest.test_euc_encodingc                 C   s  |  dd |  dd |  dd |  dd |  dd |  d	d |  d
d |  dd |  dd |  dd |  dd |  dd |  dd |  dd |  dd |  dd |  dd |  dd |  dd |  dd |  dd |  dd d S )Njar   zja.jisz
ja_JP.JIS7zja.sjisz
ja_JP.SJISja_jpz
ja_jp.ajecr   r   zja_jp.iso-2022-jpzja_jp.iso2022jpz	ja_jp.jisz
ja_jp.jis7zja_jp.mscodez	ja_jp.pckz
ja_jp.sjisz
ja_jp.ujisz
ja_jp.utf8zja_JP.UTF-8japanjapanesezjapanese-euczjapanese.euczjapanese.sjisjp_jpr   r6   r!   r!   r"   test_japanese  s,   zNormalizeTest.test_japaneseN)r-   r.   r/   r   r   r   r   r   r   r   r   r   r   r   r   r!   r!   r!   r"   r     s    	r   c                   @   sD   e Zd Zdd Zdd Zdd Zdd Zd	d
 Zdd Zdd Z	dS )TestMiscellaneousc              
   C   s   dd l }dd l}| tdd t|dr|j}|`nd }i }zBdD ]}||jv r5|j| ||< |j|= q#d|jd< | t d W |D ]	}|| |j|< qFd|vrX|jd= |d ura||_d S d S |D ]	}|| |j|< qed|vrw|jd= |d ur~||_w )Nr   UTF-8)Nr   _getdefaultlocale)r   LC_CTYPELANGLANGUAGEr   )	_localer   rY   r   _parse_localenamehasattrr   environgetdefaultlocale)r+   r  r   Zorig_getlocaleZorig_envkeykr!   r!   r"   test_defaults_UTF8  s:   



z$TestMiscellaneous.test_defaults_UTF8c                 C   s   t  }|rt| d S d S r3   )r   r   r   r   r   r!   r!   r"   test_getpreferredencoding  s   z+TestMiscellaneous.test_getpreferredencodingc                 C   s(   |  ttjdd  |  ttjdd  d S )Nr      a)r   	TypeErrorr   r   r6   r!   r!   r"   test_strcoll_3303  s   z#TestMiscellaneous.test_strcoll_3303c                 C   s^   t t j t t j t t j t t j t t j t t j | t j	t jd d S )Ni90  )
r   r   r   LC_TIMEr   
LC_COLLATELC_MONETARYr   r   r   r6   r!   r!   r"   test_setlocale_category!  s   z)TestMiscellaneous.test_setlocale_categoryc              
   C   s   t t j}| t jt j| z	t t jd W n t jy'   | d Y nw t t j}tr:td|f ddd z	t t j| W n t jya } z| d|d| W Y d }~nd }~ww | 	|t t j d S )	Ntr_TRztest needs Turkish localeztesting with %ar$   Tr%   zsetlocale(LC_CTYPE, z
) failed: )
r   r   r   r)   r   ZskipTest	getlocaler   r*   rY   )r+   r    locexcr!   r!   r"   test_getsetlocale_issue1813,  s"   "z-TestMiscellaneous.test_getsetlocale_issue1813c                 C   >   |  t ttjd W d    d S 1 sw   Y  d S )Ns   fi_FIr   r  r   r   r   r6   r!   r!   r"   )test_invalid_locale_format_in_localetupleA     "z;TestMiscellaneous.test_invalid_locale_format_in_localetuplec                 C   r  )N)s   nots   validr  r6   r!   r!   r"   $test_invalid_iterable_in_localetupleE  r  z6TestMiscellaneous.test_invalid_iterable_in_localetupleN)
r-   r.   r/   r  r	  r  r  r  r  r  r!   r!   r!   r"   r     s    $r   c                   @   $   e Zd Zdd Zdd Zdd ZdS )BaseDelocalizeTestc                 C      |  t|| d S r3   )rY   r   
delocalizer+   r[   r\   r!   r!   r"   _test_delocalizeL  r   z#BaseDelocalizeTest._test_delocalizec                 C   r  r3   )rY   r   atofr  r!   r!   r"   
_test_atofO  r   zBaseDelocalizeTest._test_atofc                 C   r  r3   )rY   r   atoir  r!   r!   r"   
_test_atoiR  r   zBaseDelocalizeTest._test_atoiN)r-   r.   r/   r   r"  r$  r!   r!   r!   r"   r  J      r  c                   @   r  )TestEnUSDelocalizec                 C   s   |  dd |  dd d S )N50000.00	50,000.00r   r6   r!   r!   r"   test_delocalizeX  r   z"TestEnUSDelocalize.test_delocalizec                 C   r   )Nr'       j@r(  r"  r6   r!   r!   r"   	test_atof\  r   zTestEnUSDelocalize.test_atofc                 C   r   )N50000r   z50,000r$  r6   r!   r!   r"   	test_atoi`  r   zTestEnUSDelocalize.test_atoiNr-   r.   r/   r*  r-  r0  r!   r!   r!   r"   r&  V      r&  c                   @   r  )TestCDelocalizeTestc                 C   r   Nr'  r)  r6   r!   r!   r"   r*  g  r   z#TestCDelocalizeTest.test_delocalizec                 C      |  dd d S )Nr'  r+  r,  r6   r!   r!   r"   r-  j  r   zTestCDelocalizeTest.test_atofc                 C   r5  )Nr.  r   r/  r6   r!   r!   r"   r0  m  r   zTestCDelocalizeTest.test_atoiNr1  r!   r!   r!   r"   r3  e  r%  r3  c                   @   r  )TestfrFRDelocalizeTestc                 C   r   )N50000,00r'  	50 000,00r)  r6   r!   r!   r"   r*  s  r   z&TestfrFRDelocalizeTest.test_delocalizec                 C   r   )Nr7  r+  r8  r,  r6   r!   r!   r"   r-  w  r   z TestfrFRDelocalizeTest.test_atofc                 C   r   )Nr.  r   z50 000r/  r6   r!   r!   r"   r0  {  r   z TestfrFRDelocalizeTest.test_atoiNr1  r!   r!   r!   r"   r6  q  r2  r6  c                   @   s   e Zd ZdddZdS )BaseLocalizeTestFc                 C   s   |  tj||d| d S )Nr   )rY   r   localize)r+   r[   r\   r>   r!   r!   r"   _test_localize  r   zBaseLocalizeTest._test_localizeN)F)r-   r.   r/   r;  r!   r!   r!   r"   r9    s    r9  c                   @   r   )TestEnUSLocalizec                 C   s&   |  dd |  dtdd d S )Nr'  z{0:.16f}z1.15z1.1500000000000000)r;  rZ   r   r6   r!   r!   r"   test_localize  s   zTestEnUSLocalize.test_localizeNr-   r.   r/   r=  r!   r!   r!   r"   r<        r<  c                   @   r   )TestCLocalizec                 C   r   r4  r;  r6   r!   r!   r"   r=    r   zTestCLocalize.test_localizeNr>  r!   r!   r!   r"   r@    r?  r@  c                   @   r   )TestfrFRLocalizec                 C   s    |  dd | j dddd d S )Nr'  r7  r8  Tr   rA  r6   r!   r!   r"   r=    s   zTestfrFRLocalize.test_localizeNr>  r!   r!   r!   r"   rB    r?  rB  __main__)(decimalr   Ztest.supportr   r   Ztest.support.warnings_helperr   r   r   r   r   ZTestCaser   r2   r8   rN   rV   objectrX   rg   r   r   r   r   r   r   r   r   r   r   r  r&  r3  r6  r9  r<  r@  rB  r-   mainr!   r!   r!   r"   <module>   sF    +I

*oZ
