Current File : //usr/local/apps/python3/lib/python3.11/test/__pycache__/test_locale.cpython-311.opt-2.pyc
�

�Ke�d���ddlmZddlmZmZmZmZddlmZddl	Z	ddl
Z
ddlZddlZGd�de	j
��ZGd�de	j
��ZGd	�d
e��ZGd�de��ZGd
�de��ZGd�de��ZGd�de��ZGd�de	j
��ZGd�de	j
��ZGd�dee��ZGd�dee��ZGd�dee��ZGd�dee��ZGd�d e	j
��ZGd!�d"ee��ZGd#�d$e	j
��ZGd%�d&e	j
��ZGd'�d(e��Z Gd)�d*ee ��Z!Gd+�d,ee ��Z"Gd-�d.ee ��Z#Gd/�d0e��Z$Gd1�d2ee$��Z%Gd3�d4ee$��Z&Gd5�d6ee$��Z'e(d7kre	j)��dSdS)8�)�Decimal)�verbose�
is_android�
is_emscripten�is_wasi)�check_warningsNc�*�eZdZed���Zd�ZdS)�BaseLocalizedTestc���tjdkr^ddl}d}t|���j�d��d��dkrtjd���n$tj�	d��rd}nd	}	tjtj��}|D]9}	tjtj|��n#tj
$rY�4wxYwn*tjd
d�|��z���||_tjtj|��dS#tjtj|��wxYw)N�darwinr)�en_US.UTF-8�en_US.ISO8859-1�en_US�.�
z#Locale support on MacOSX is minimal�win)�En�English)r
r�en_US.US-ASCIIrz$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�tlocs�	oldlocale�tlocs     �:/usr/local/apps/python3/lib/python3.11/test/test_locale.py�
setUpClasszBaseLocalizedTest.setUpClasssn���<�8�#�#��I�I�I�?�E��2�8�8�:�:�%�+�+�C�0�0��3�4�4�r�9�9��'�(M�N�N�N�	:�
�\�
$�
$�U�
+�
+�	0�%�E�E�0�E�
	;��(��):�;�;�I��
K�
K����$�V�%6��=�=�=�=���|�����H��������'�)5�8<�	�	�%�8H�8H�)J�K�K�K�"�C�O���V�.�	�:�:�:�:�:��F��V�.�	�:�:�:�:���s0�"E�7C�E�C)�&E�(C)�)6E�!E!c��tj|j��}|�tj|j|��tj|j|j��t
rt
d|jzdd���dSdS)Nztesting with %r...� T��end�flush)r r!�locale_type�
addCleanupr%r�print)�selfr(s  r*�setUpzBaseLocalizedTest.setUp-s����$�T�%5�6�6�	�����(�$�*:�I�F�F�F����)�4�+;�<�<�<��	P��&��)9�9�s�$�O�O�O�O�O�O�	P�	P�N)�__name__�
__module__�__qualname__�classmethodr+r5�r6r*r
r

sC������
�;�;��[�;�:P�P�P�P�Pr6r
c��eZdZd�Zd�ZdS)�BaseCookedTestc�(�|jt_dS�N)�
cooked_valuesr �_override_localeconv�r4s r*r5zBaseCookedTest.setUp:s��&*�&8��#�#�#r6c��it_dSr?)r rArBs r*�tearDownzBaseCookedTest.tearDown=s��&(��#�#�#r6N)r7r8r9r5rDr;r6r*r=r=5s2������
9�9�9�)�)�)�)�)r6r=c��eZdZidd�dd�dd�dg�dd�d	d�d
d�dg�dd�d
d�dd�dd�dd�dd�dd�dd�dd�ddi�ZdS)�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�r7r8r9r@r;r6r*rFrF@s���������2�����	�s��	�B�	�
	�2��	�3�
�	�R��	���	�R��	���	�#��	�s��	���	���	�#�� 	�s�!�"	��#�$	��%��M�M�Mr6rFc��eZdZidd�dd�dd�dgd��d	d
�dd�dd�d
gd��dd�dd�dd�dd�dd�dd�dd�dd�dd�ddi�ZdS)�EnUSCookedTestrG�$rIrrJ�rL��rarrMzUSD rNrOrPrQ�,rR�rSrrTrU�-rVrWrXrYrHrZNr[r;r6r*r]r]Xs���������3�����	�q��	�I�I�I�	�
	�6��	�1�
�	�S��	�	�	�	��	�S��	���	�!��	�q��	���	���	�!�� 	�q�!�"	��#�$	��%��M�M�Mr6r]c��eZdZidd�dd�dd�dgd��d	d
�dd�dd�d
gd��dd�dd�dd�dd�dd�dd�dd�dd�dd�ddi�ZdS)�FrFRCookedTestrG�€rIrbrJr_rLr`rMzEUR rNrOrPrQr-rRrrSrcrTrUrdrVrWrXrYrHrZNr[r;r6r*rfrfqs���������8�����	�q��	�I�I�I�	�
	�6��	�1�
�	�S��	�	�	�	��	�S��	���	�!��	�q��	���	���	�!�� 	�q�!�"	��#�$	��%��M�M�Mr6rfc�&�eZdZd�Zd�Zd�Zd�ZdS)�BaseFormattingTestc�B�|�|||fi|��|��dSr?)�assertEqual)r4�format�value�out�func�format_optss      r*�_test_formatfuncz#BaseFormattingTest._test_formatfunc�s=������D���.�.�+�.�.��	5�	5�	5�	5�	5r6c��tdtf��5|j|||fdtji|��ddd��dS#1swxYwYdS)NrHro)r�DeprecationWarningrqr rl�r4rlrmrnrps     r*�_test_formatzBaseFormattingTest._test_format�s���
�R�!3�4�
5�
5�	3�	3�!�D�!�&�%��
3�
3��]�
3�&1�
3�
3�
3�	3�	3�	3�	3�	3�	3�	3�	3�	3�	3�	3�	3����	3�	3�	3�	3�	3�	3s�A�A�Ac�>�|j|||fdtji|��dS)Nro)rqr �
format_stringrts     r*�_test_format_stringz&BaseFormattingTest._test_format_string�sA�����f�e�S�	6�	6��%�	6�)4�	6�	6�	6�	6�	6r6c�R�|�tj|fi|��|��dSr?)rkr �currency)r4rmrnrps    r*�_test_currencyz!BaseFormattingTest._test_currency�s0��������>�>�+�>�>��D�D�D�D�Dr6N)r7r8r9rqrurxr{r;r6r*riri�sU������
5�5�5�3�3�3�
6�6�6�E�E�E�E�Er6ric�D�eZdZd�Zd�Zd�Zd�Zd�Zd�Zd�Z	d�Z
d	�Zd
S)�EnUSNumberFormattingc�B�tj��d|_dS)NrZ)r �
localeconv�seprBs r*r5zEnUSNumberFormatting.setUp�s���$�&�&��7����r6c���|�dddd|jz���|�dddd���|�dddd	���|�d
ddd	���dS)N�%f�rcz
1%s024.000000�rLrn�f�
102.000000�����
-42.000000�%+f�rur�rBs r*�
test_groupingz"EnUSNumberFormatting.test_grouping�s������$��q�o���6P��Q�Q�Q����$��a�\��B�B�B����$��a�\��B�B�B����%��q�l��C�C�C�C�Cr6c�@�|�dddd�d�����|jrj|�dddd	|jz�d
�����|�dddd	|jz�d
�����dSdS)N�%20.fr�rc�-42�r��%+10.f���-4%s200r�%-10.f)ru�rjustr��ljustrBs r*�test_grouping_and_paddingz.EnUSNumberFormatting.test_grouping_and_padding�s������'�3�����B����H�H�H��8�	6����h������)�0�0��4�4�
�
6�
6�
6����h������)�0�0��4�4�
�
6�
6�
6�
6�
6�	6�	6r6c���|�dddd|jz���|�dddd|jz���|�dddd	|jz���dS)
N�%d�hT�4%s200r�z%+dz+4%s200r�r�r�rBs r*�test_integer_groupingz*EnUSNumberFormatting.test_integer_grouping�st�����$��t��D�H�9L��M�M�M����%���)�d�h�:N��O�O�O����%���9�t�x�;O��P�P�P�P�Pr6c���|�dddd|jz�d�����|�dddd	|jz�d�����dS)
N�%10dr�Tr�rr��%-10dr�r�)rur�r�r�rBs r*�!test_integer_grouping_and_paddingz6EnUSNumberFormatting.test_integer_grouping_and_padding�s������&�$���D�H�$�+�+�B�/�/�	�	1�	1�	1����'�5�4��T�X�%�,�,�R�0�0�	�	2�	2�	2�	2�	2r6c���|�dddd���|�dddd���|�dddd	���|�d
ddd	���dS)Nr�r�rz1024.000000r�r�r�r�r�r��rurBs r*�test_simplez EnUSNumberFormatting.test_simple�s|�����$��q�m��D�D�D����$��a�\��B�B�B����$��a�\��B�B�B����%��q�l��C�C�C�C�Cr6c��|�dddd�d�����|�dddd	�d
�����|�dddd
�d
�����dS)Nr�r�rr�r�r�r�r�z-4200rr�r��4200�rur�r�rBs r*�test_paddingz!EnUSNumberFormatting.test_padding�s������'�3�����B����H�H�H����(�E�A�7�=�=��;L�;L��M�M�M����(�D�1�&�,�,�r�:J�:J��K�K�K�K�Kr6c��|�t��5tjddd���ddd��dS#1swxYwYdS)Nr�r�T�rL)�assertWarnsrsr rlrBs r*�test_format_deprecationz,EnUSNumberFormatting.test_format_deprecation�s���
�
�
�0�
1�
1�	9�	9��M�(�D�4�8�8�8�8�	9�	9�	9�	9�	9�	9�	9�	9�	9�	9�	9�	9����	9�	9�	9�	9�	9�	9s�A�A�Ac
��|�dddd|j�d|j�d����|�dddd|j�d|j�d����|�d	d
d���|jr7|�d
dddd|jz�d��z���|�dddd�d�����|jr4|�dddd|jz�d�����|jr,|�dddd|j�d|j�d����dSdS)NzOne million is %ii@BrczOne million is 1�000r�zOne  million is %izOne  million is 1z.%f.�@�@z
.1000.000000.�rnz-->  %10.2fr�z-->  z	4%s200.00rz%10.*f)r_��rz1000.00z%*.*f)rr_r�z	1%s000.00zint %i float %.2f str %s)r�r��strzint 1z000 float 1z000.00 str str)rxr�r�rBs r*�test_complex_formattingz,EnUSNumberFormatting.test_complex_formatting�s���� � �!4�g���04����$�(�(�(�C�	!�	E�	E�	E�� � �!5�w���15����4�8�8�8�D�	!�	F�	F�	F�	
� � ���_� �E�E�E��8�	B��$�$�]�D�1��{�T�X�5�<�<�R�@�@�@�
%�
B�
B�
B�	
� � ��9�q�����#�#�	!�	%�	%�	%��8�	8��$�$�W�m�a� �4�8�+�2�2�2�6�6�
%�
8�
8�
8��8�	&��$�$�%?�%�������4�8�8�8�%�
%�
&�
&�
&�
&�
&�	&�	&r6N)r7r8r9r5r�r�r�r�r�r�r�r�r;r6r*r}r}�s�������8�8�8�D�D�D�6�6�6�Q�Q�Q�
2�2�2�D�D�D�L�L�L�
9�9�9�&�&�&�&�&r6r}c��eZdZd�ZdS)�TestFormatPatternArgc��tdtf��5|�ttjdd��|�ttjdd��|�ttjdd��|�ttjdd��|�ttjdd��|�ttjdd��|�ttjd	d��ddd��dS#1swxYwYdS)
NrHz%f
�fooz%f
z%f
z %fz%fgz%^g�%f%%)rrs�assertRaises�
ValueErrorr rlrBs r*�test_onlyOnePatternz(TestFormatPatternArg.test_onlyOnePattern�sR��
�R�!3�4�
5�
5�	H�	H����j�&�-���G�G�G����j�&�-���G�G�G����j�&�-��5�I�I�I����j�&�-���F�F�F����j�&�-���F�F�F����j�&�-���F�F�F����j�&�-���G�G�G�	H�	H�	H�	H�	H�	H�	H�	H�	H�	H�	H�	H����	H�	H�	H�	H�	H�	Hs�DD6�6D:�=D:N)r7r8r9r�r;r6r*r�r��s(������	H�	H�	H�	H�	Hr6r�c��eZdZ	d�Zd�ZdS)�TestLocaleFormatStringc��|�tjdd��ddz��|�tjdd��ddz��|�tjdddi��dddiz��dS)Nr���?z%d %f%%d)rcr�z%(foo)s %%dr��bar�rkr rwrBs r*�test_percent_escapez*TestLocaleFormatString.test_percent_escape�s�������-�f�c�:�:�F�S�L�I�I�I�����-�j�(�C�C���!�	#�	#�	#�����-�m�e�U�^�L�L�
�e�U�^�
+�	.�	.�	.�	.�	.r6c���|�tjdddi��dddiz��|�tjdddi��dddiz��dS)Nz
%(foo)s bing.r�r�z%(foo)sr�rBs r*�test_mappingz#TestLocaleFormatString.test_mappingsz������-�o��u�~�N�N�
��u�~�
-�	0�	0�	0�����-�i�%���H�H�
�%���
'�	*�	*�	*�	*�	*r6N)r7r8r9r�r�r;r6r*r�r��s5������/�.�.�.�*�*�*�*�*r6r�c�"�eZdZejZd�ZdS)�TestNumberFormattingc�n�t�|��t�|��dSr?)r
r5r}rBs r*r5zTestNumberFormatting.setUps0������%�%�%��"�"�4�(�(�(�(�(r6N)r7r8r9r r"r1r5r;r6r*r�r�s-�������#�K�)�)�)�)�)r6r�c��eZdZd�Zd�ZdS)�TestEnUSNumberFormattingc�n�t�|��t�|��dSr?)r]r5r}rBs r*r5zTestEnUSNumberFormatting.setUps0�����T�"�"�"��"�"�4�(�(�(�(�(r6c��|�dd��|�ddd���|�dddd���dS)N�P�z	$50000.00z
$50,000.00Tr�z
USD 50,000.00�rL�
international�r{rBs r*�
test_currencyz&TestEnUSNumberFormatting.test_currencysc�����E�;�/�/�/����E�<�$��?�?�?����E�?���	�	/�	/�	/�	/�	/r6N)r7r8r9r5r�r;r6r*r�r�s2������)�)�)�/�/�/�/�/r6r�c��eZdZd�Zd�ZdS)�TestCNumberFormattingc�8�|�dddd���dS)N�%.2f�)\����@Tz12345.67r�r�rBs r*r�z#TestCNumberFormatting.test_grouping&s%�����&�(�T�z��J�J�J�J�Jr6c�8�|�dddd���dS)N�%9.2fr�Tz	 12345.67r�r�rBs r*r�z/TestCNumberFormatting.test_grouping_and_padding)s%�����'�8�d���L�L�L�L�Lr6N)r7r8r9r�r�r;r6r*r�r�#s:������K�K�K�M�M�M�M�Mr6r�c�2�eZdZd�Zd�Zd�Zd�Zd�Zd�ZdS)�TestFrFRNumberFormattingc�6�|�ddd���dS)Nr�r�z12345,67r�r�rBs r*�test_decimal_pointz+TestFrFRNumberFormatting.test_decimal_point0s#�����&�(�
��;�;�;�;�;r6c�j�|�dddd���|�dddd���dS)Nr����Q��u@T�345,67r�r��	12 345,67r�rBs r*r�z&TestFrFRNumberFormatting.test_grouping3sB�����&�&�4�X��F�F�F����&�(�T�{��K�K�K�K�Kr6c��|�dddd���|�dddd���|�dd	dd
���|�dd	dd
���|�dd	dd
���|�dddd���|�dddd���|�dd	dd
���|�dd	dd
���|�dd	dd���dS)Nz%6.2fr�Tr�r�z%7.2fz 345,67z%8.2fr�r�r�z%10.2fz
 12 345,67z%-6.2fz%-7.2fz345,67 z%-8.2fz%-9.2fz%-10.2fz
12 345,67 r�rBs r*r�z2TestFrFRNumberFormatting.test_grouping_and_padding7s*�����'�6�D�h��G�G�G����'�6�D�i��H�H�H����'�8�d���L�L�L����'�8�d���L�L�L����(�H�t���N�N�N����(�F�T�x��H�H�H����(�F�T�y��I�I�I����(�H�t���M�M�M����(�H�t���M�M�M����)�X��,��O�O�O�O�Or6c�j�|�dddd���|�dddd���dS)Nr���T�200r�r��4 200r�rBs r*r�z.TestFrFRNumberFormatting.test_integer_groupingCsB�����$��d���>�>�>����$��t���A�A�A�A�Ar6c�~�|�dddd���|�dddd���|�dddd�d�����|�d	ddd���|�d
ddd���|�dddd�d�����dS)Nz%4dr�Tr�r�z%5dr�rz%-4dz%-5dr�r�rBs r*r�z:TestFrFRNumberFormatting.test_integer_grouping_and_paddingGs������%���'��B�B�B����%���'��B�B�B����&�$��7�=�=��;L�;L��M�M�M����&�$��7��C�C�C����&�$��7��C�C�C����'�4�$�G�M�M�"�<M�<M��N�N�N�N�Nr6c��d}|�dd|z��|�dd|zd���|�dddd���dS)	Nrgr�z	50000,00 z
50 000,00 Tr�z
50 000,00 EURr�r�)r4�euros  r*r�z&TestFrFRNumberFormatting.test_currencyOsr�������E�;��#5�6�6�6����E�<�$�#6���F�F�F����E�?���	�	/�	/�	/�	/�	/r6N)	r7r8r9r�r�r�r�r�r�r;r6r*r�r�-sz������<�<�<�L�L�L�
P�
P�
P�B�B�B�O�O�O�/�/�/�/�/r6r�c��eZdZd�Zd�ZdS)�
TestCollationc��|�tjdd��d��|�tjdd��d��|�tjdd��d��|�ttjdd��|�ttjdd��dS)N�a�br�a)�
assertLessr �strcollrk�
assertGreaterr�r�rBs r*�test_strcollzTestCollation.test_strcollZs��������s�C�0�0�!�4�4�4�������S�1�1�1�5�5�5����6�>�#�s�3�3�Q�7�7�7����*�f�n�e�S�A�A�A����*�f�n�c�5�A�A�A�A�Ar6c���|�tjd��tjd����|�ttjd��dS)Nr�r�r�)r�r �strxfrmr�r�rBs r*�test_strxfrmzTestCollation.test_strxfrmbsJ�������s�+�+�V�^�C�-@�-@�A�A�A����*�f�n�e�<�<�<�<�<r6N)r7r8r9r�r�r;r6r*r�r�Ws5������B�B�B�=�=�=�=�=r6r�c�N�eZdZejZd�Zeje	j
�d��d��ejepe
d��d�����Zeje	j
�d��d��ejepe
d��d�����ZdS)�TestEnUSCollationc�b�tjtj��pd��j}|dvrtjd���|dkrJtjdks&tstj�
d��rtjd���t�|��dS)N�ascii)zutf-8�	iso8859-1�cp1252zencoding not suitabler�r�freebsdzwcscoll/wcsxfrm have known bugs)
�codecs�lookupr �getencoding�namerrrrrrr
r5�r4�encs  r*r5zTestEnUSCollation.setUpms����m�F�.�0�0�;�G�<�<�A���6�6�6��#�$;�<�<�<��+���3�<�8�#;�#;�z�#;�#&�<�#:�#:�9�#E�#E�$<��#�$E�F�F�F�����%�%�%�%�%r6�aixzbpo-29972: broken test on AIXz-musl libc issue on Emscripten/WASI, bpo-46390c�X�|�tjdd��d��dS)N�àr�r)r�r r�rBs r*�test_strcoll_with_diacriticz-TestEnUSCollation.test_strcoll_with_diacriticvs*��	
�����t�S�1�1�1�5�5�5�5�5r6c�z�|�tjd��tjd����dS)Nrr�)r�r r�rBs r*�test_strxfrm_with_diacriticz-TestEnUSCollation.test_strxfrm_with_diacritics2��	
�����t�,�,�f�n�S�.A�.A�B�B�B�B�Br6N)r7r8r9r �LC_ALLr1r5r�skipIfrrrrrrrr;r6r*r�r�hs��������-�K�&�&�&��X�_�S�\�,�,�U�3�3�4�6�6��X�_�� ��7���6�6�	��6�6�6��X�_�S�\�,�,�U�3�3�4�6�6��X�_�� ��7���C�C�	��6�6�C�C�Cr6r�c�V�eZdZd�Zd�Zd�Zd�Zd�Zd�Zd�Z	d�Z
d	�Zd
�Zd�Z
d�Zd
S)�
NormalizeTestc�Z�|�tj|��||���dS)N)�msg)rkr �	normalize)r4�
localename�expecteds   r*�checkzNormalizeTest.check�s.������)�*�5�5�x�Z��P�P�P�P�Pr6c���tj���D]K\}}|�||f���5|�||��ddd��n#1swxYwY�LdS)N)r )r �locale_alias�items�subTestr)r4r
�aliass   r*�test_locale_aliaszNormalizeTest.test_locale_alias�s���!'�!4�!:�!:�!<�!<�	.�	.��J�����j�%�%8��9�9�
.�
.��
�
�:�u�-�-�-�
.�
.�
.�
.�
.�
.�
.�
.�
.�
.�
.����
.�
.�
.�
.��	.�	.s�A�A#	�&A#	c�2�|�dd��dS�NrH�rrBs r*�
test_emptyzNormalizeTest.test_empty�s���
�
�2�r�����r6c�^�|�dd��|�dd��dS)N�c�C�posixrrBs r*�test_czNormalizeTest.test_c�s0���
�
�3������
�
�7�C� � � � � r6c��|�dd��|�dd��|�dd��|�dd��|�dd��|�dd��|�d	d	��|�d
d	��|�dd	��|�dd��|�dd��|�d
d��|�dd��|�dd��|�dd��dS)N�enr�ENzen.iso88591r�en_us�en_GBzen_GB.ISO8859-1r
z
en_US.utf8zen_US:UTF-8rzen_US.88591zen_US.885915�en_US.ISO8859-15�englishzen_EN.ISO8859-1zenglish_uk.asciirrBs r*�test_englishzNormalizeTest.test_english�sC���
�
�4�*�+�+�+��
�
�4�*�+�+�+��
�
�=�"3�4�4�4��
�
�7�-�.�.�.��
�
�7�-�.�.�.��
�
�7�-�.�.�.��
�
�=�-�0�0�0��
�
�<��/�/�/��
�
�=�-�0�0�0��
�
�$�&7�8�8�8��
�
�#�%6�7�7�7��
�
�=�"3�4�4�4��
�
�>�#5�6�6�6��
�
�9�/�0�0�0��
�
�%�'8�9�9�9�9�9r6c�B�|�dd��|�dd��|�dd��|�dd��|�dd��|�dd��|�dd��|�dd	��|�d
d	��|�dd��|�dd��|�d
d��|�dd��dS)Nzaz_AZ.iso88599ezaz_AZ.ISO8859-9Eztt_RU.koi8cztt_RU.KOI8-Czlo_LA.cp1133zlo_LA.IBM-CP1133zlo_LA.ibmcp1133zuk_ua.microsoftcp1251zuk_UA.CP1251zuk_ua.microsoft-cp1251zka_ge.georgianacademyzka_GE.GEORGIAN-ACADEMYzcs_CZ.iso88592zcs_CZ.ISO8859-2rrBs r*�test_hyphenated_encodingz&NormalizeTest.test_hyphenated_encoding�s���
�
�$�&8�9�9�9��
�
�%�'9�:�:�:��
�
�=�.�1�1�1��
�
�>�>�2�2�2��
�
�>�#5�6�6�6��
�
�$�&8�9�9�9��
�
�%�'9�:�:�:��
�
�*�N�;�;�;��
�
�+�^�<�<�<��
�
�*�,D�E�E�E��
�
�+�-E�F�F�F��
�
�#�%6�7�7�7��
�
�$�&7�8�8�8�8�8r6c��|�dd��|�dd��|�dd��dS)Nz
de_DE@eurozde_DE.ISO8859-15zen_US.ISO8859-15@euror$zde_DE.utf8@eurozde_DE.UTF-8rrBs r*�test_euro_modifierz NormalizeTest.test_euro_modifier�sH���
�
�<�!3�4�4�4��
�
�*�,>�?�?�?��
�
�$�m�4�4�4�4�4r6c��|�dd��|�dd��|�dd��dS)Nzbe_BY.UTF-8@latinzsr_RS.UTF-8@latinzsr_RS.UTF-8@latnrrBs r*�test_latin_modifierz!NormalizeTest.test_latin_modifier�sJ���
�
�&�(;�<�<�<��
�
�&�(;�<�<�<��
�
�%�':�;�;�;�;�;r6c��|�dd��|�dd��|�dd��dS)Nzca_ES.UTF-8@valenciazca_ES@valenciazca@valenciazca_ES.ISO8859-1@valenciarrBs r*�test_valencia_modifierz$NormalizeTest.test_valencia_modifier�sI���
�
�)�+A�B�B�B��
�
�#�%;�<�<�<��
�
�=�"<�=�=�=�=�=r6c��|�dd��|�dd��|�dd��|�dd��|�dd��|�dd��|�dd��|�dd��|�d	d��|�d
d
��|�dd
��|�dd
��dS)
Nzks_IN.UTF-8@devanagarizks_IN@devanagariz
ks@devanagarizks_IN.UTF-8�ks_IN�kszsd_IN.UTF-8@devanagarizsd_IN@devanagariz
sd@devanagarizsd_IN.UTF-8�sd_IN�sdrrBs r*�test_devanagari_modifierz&NormalizeTest.test_devanagari_modifier�s���
�
�+�-E�F�F�F��
�
�%�'?�@�@�@��
�
�?�$<�=�=�=��
�
�=�-�0�0�0��
�
�7�M�*�*�*��
�
�4��'�'�'��
�
�+�-E�F�F�F��
�
�%�'?�@�@�@��
�
�?�$<�=�=�=��
�
�=�-�0�0�0��
�
�7�M�*�*�*��
�
�4��'�'�'�'�'r6c�:�|�dd��|�dd��|�dd��|�dd��|�dd��|�d	d
��|�dd
��dS)N�	ja_jp.euc�ja_JP.eucJP�ja_jp.eucjpz	ko_kr.euczko_KR.eucKRzko_kr.euckrz	zh_cn.euczzh_CN.eucCNz	zh_tw.euczzh_TW.eucTWzzh_tw.euctwrrBs r*�test_euc_encodingzNormalizeTest.test_euc_encoding�s����
�
�;�
�.�.�.��
�
�=�-�0�0�0��
�
�;�
�.�.�.��
�
�=�-�0�0�0��
�
�;�
�.�.�.��
�
�;�
�.�.�.��
�
�=�-�0�0�0�0�0r6c���|�dd��|�dd��|�dd��|�dd��|�dd��|�d	d��|�d
d��|�dd��|�dd��|�d
d��|�dd��|�dd��|�dd��|�dd��|�dd��|�dd��|�dd��|�dd��|�dd��|�dd��|�dd��|�dd��dS)N�jar7zja.jisz
ja_JP.JIS7zja.sjisz
ja_JP.SJIS�ja_jpz
ja_jp.ajecr6r8zja_jp.iso-2022-jpzja_jp.iso2022jpz	ja_jp.jisz
ja_jp.jis7zja_jp.mscodez	ja_jp.pckz
ja_jp.sjisz
ja_jp.ujisz
ja_jp.utf8zja_JP.UTF-8�japan�japanesezjapanese-euczjapanese.eucz
japanese.sjis�jp_jprrBs r*�
test_japanesezNormalizeTest.test_japanese�s����
�
�4��'�'�'��
�
�8�\�*�*�*��
�
�9�l�+�+�+��
�
�7�M�*�*�*��
�
�<��/�/�/��
�
�;�
�.�.�.��
�
�=�-�0�0�0��
�
�&��5�5�5��
�
�$�l�3�3�3��
�
�;��-�-�-��
�
�<��.�.�.��
�
�>�<�0�0�0��
�
�;��-�-�-��
�
�<��.�.�.��
�
�<��/�/�/��
�
�<��/�/�/��
�
�7�M�*�*�*��
�
�:�}�-�-�-��
�
�>�=�1�1�1��
�
�>�=�1�1�1��
�
�?�L�1�1�1��
�
�7�M�*�*�*�*�*r6N)r7r8r9rrrrr&r(r*r,r.r4r9r@r;r6r*r	r	�s�������Q�Q�Q�.�.�.�
���!�!�!�:�:�:�"
9�
9�
9�5�5�5�
<�<�<�
>�>�>�
(�(�(�1�1�1�+�+�+�+�+r6r	c�>�eZdZd�Zd�Zd�Zd�Zd�Zd�Zd�Z	d�Z
d	S)
�TestMiscellaneousc�d�ddl}ddl}|�tjd��d��t|d��r
|j}|`nd}i}	dD]#}||jvr|j|||<|j|=�$d|jd<tdtf��5|�tj
��d��ddd��n#1swxYwY|D]}|||j|<�d|vr|jd=|�	||_dSdS#|D]}|||j|<�d|vr|jd=|�||_wxYw)Nr�UTF-8)NrD�_getdefaultlocale)r�LC_CTYPE�LANG�LANGUAGErFrH)�_localerrkr �_parse_localename�hasattrrE�environrrs�getdefaultlocale)r4rIr�orig_getlocale�orig_env�key�ks       r*�test_defaults_UTF8z$TestMiscellaneous.test_defaults_UTF8�s���	�����	�	�	�����1�'�:�:�O�L�L�L��7�/�0�0�	"�$�6�N��)�)�!�N���	;�A�
(�
(���"�*�$�$�$&�J�s�O�H�S�M��
�3���%,�B�J�z�"���%7� 8�9�9�
M�
M�� � ��!8�!:�!:�O�L�L�L�
M�
M�
M�
M�
M�
M�
M�
M�
M�
M�
M����
M�
M�
M�
M��
,�
,�� (����
�1�
�
���)�)��J�z�*��)�,:��)�)�)�*�)��
�
,�
,�� (����
�1�
�
���)�)��J�z�*��)�,:��)�:�:�:�:s1�AD�(C
�>D�
C�D�C�D�,D/c��tj��}|�|t��|�|d��tj|��dSr)r r��assertIsInstancer��assertNotEqualr�r�r�s  r*�test_getencodingz"TestMiscellaneous.test_getencodingsR��� �"�"�����c�3�'�'�'����C��$�$�$��
�c�����r6c�\�tj��}|rtj|��dSdSr?)r �getpreferredencodingr�r�r�s  r*�test_getpreferredencodingz+TestMiscellaneous.test_getpreferredencoding&s8���)�+�+���	��M�#������	�	r6c��|�ttjdd��|�ttjdd��dS)Nr��a)r��	TypeErrorr r�rBs r*�test_strcoll_3303z#TestMiscellaneous.test_strcoll_3303-s@�����)�V�^�S�$�?�?�?����)�V�^�T�4�@�@�@�@�@r6c���tjtj��tjtj��tjtj��tjtj��tjtj��tjtj��|�tj	tjd��dS)Ni90)
r r!r�LC_TIMErF�
LC_COLLATE�LC_MONETARYr"r�r#rBs r*�test_setlocale_categoryz)TestMiscellaneous.test_setlocale_category2s�������'�'�'�����(�(�(�����)�)�)����*�+�+�+����+�,�,�,����*�+�+�+�	
���&�,��(8�%�@�@�@�@�@r6c��tjtj��}|�tjtj|��	tjtjd��n*#tj$r|�d��YnwxYwtjtj��}trtd|��dd���	tjtj|��n7#tj$r%}|�d|�d|����Yd}~nd}~wwxYw|�	|tjtj����dS)	N�tr_TRztest needs Turkish localez
testing with r-Tr.zsetlocale(LC_CTYPE, z
) failed: )
r r!rFr2r#�skipTest�	getlocalerr3rk)r4r(�loc�excs    r*�test_getsetlocale_issue1813z-TestMiscellaneous.test_getsetlocale_issue1813=s]���$�V�_�5�5�	�����(�&�/�9�E�E�E�	7���V�_�g�6�6�6�6���|�	7�	7�	7��M�M�5�6�6�6�6�6�	7������v��/�/���	C��E�s�s�,�#�T�B�B�B�B�	K���V�_�c�2�2�2�2���|�	K�	K�	K�
�M�M�I��I�I�#�I�I�J�J�J�J�J�J�J�J�����		K����
	
����f�.�v��?�?�@�@�@�@�@s*�A+�+$B�B�C0�0D$�?D�D$c��|�t��5tjtjd��ddd��dS#1swxYwYdS)Nsfi_FI�r�r\r r!rrBs r*�)test_invalid_locale_format_in_localetuplez;TestMiscellaneous.test_invalid_locale_format_in_localetupleRs���
�
�
�y�
)�
)�	6�	6���V�]�H�5�5�5�	6�	6�	6�	6�	6�	6�	6�	6�	6�	6�	6�	6����	6�	6�	6�	6�	6�	6�� A�A�Ac��|�t��5tjtjd��ddd��dS#1swxYwYdS)N)snotsvalidrkrBs r*�$test_invalid_iterable_in_localetuplez6TestMiscellaneous.test_invalid_iterable_in_localetupleVs���
�
�
�y�
)�
)�	@�	@���V�]�,>�?�?�?�	@�	@�	@�	@�	@�	@�	@�	@�	@�	@�	@�	@����	@�	@�	@�	@�	@�	@rmN)r7r8r9rRrVrYr]rbrirlror;r6r*rBrB�s�������#;�#;�#;�J������A�A�A�
	A�	A�	A�A�A�A�*6�6�6�@�@�@�@�@r6rBc� �eZdZd�Zd�Zd�ZdS)�BaseDelocalizeTestc�V�|�tj|��|��dSr?)rkr �
delocalize�r4rmrns   r*�_test_delocalizez#BaseDelocalizeTest._test_delocalize]s)������*�5�1�1�3�7�7�7�7�7r6c�V�|�tj|��|��dSr?)rkr �atofrts   r*�
_test_atofzBaseDelocalizeTest._test_atof`�(�������U�+�+�S�1�1�1�1�1r6c�V�|�tj|��|��dSr?)rkr �atoirts   r*�
_test_atoizBaseDelocalizeTest._test_atoicryr6N)r7r8r9rurxr|r;r6r*rqrq[sA������8�8�8�2�2�2�2�2�2�2�2r6rqc� �eZdZd�Zd�Zd�ZdS)�TestEnUSDelocalizec�^�|�dd��|�dd��dS)N�50000.00�	50,000.00�rurBs r*�test_delocalizez"TestEnUSDelocalize.test_delocalizei�4�����j�*�5�5�5����k�:�6�6�6�6�6r6c�^�|�dd��|�dd��dS)Nr��j�@r��rxrBs r*�	test_atofzTestEnUSDelocalize.test_atofm�0�����
�F�+�+�+�����V�,�,�,�,�,r6c�^�|�dd��|�dd��dS)N�50000r�z50,000�r|rBs r*�	test_atoizTestEnUSDelocalize.test_atoiq�0�������'�'�'�����%�(�(�(�(�(r6N�r7r8r9r�r�r�r;r6r*r~r~g�A������7�7�7�-�-�-�)�)�)�)�)r6r~c� �eZdZd�Zd�Zd�ZdS)�TestCDelocalizeTestc�2�|�dd��dS�Nr�r�rBs r*r�z#TestCDelocalizeTest.test_delocalizexs�����j�*�5�5�5�5�5r6c�2�|�dd��dS)Nr�r�r�rBs r*r�zTestCDelocalizeTest.test_atof{s�����
�F�+�+�+�+�+r6c�2�|�dd��dS)Nr�r�r�rBs r*r�zTestCDelocalizeTest.test_atoi~s�������'�'�'�'�'r6Nr�r;r6r*r�r�vsA������6�6�6�,�,�,�(�(�(�(�(r6r�c� �eZdZd�Zd�Zd�ZdS)�TestfrFRDelocalizeTestc�^�|�dd��|�dd��dS)N�50000,00r��	50 000,00r�rBs r*r�z&TestfrFRDelocalizeTest.test_delocalize�r�r6c�^�|�dd��|�dd��dS)Nr�r�r�r�rBs r*r�z TestfrFRDelocalizeTest.test_atof�r�r6c�^�|�dd��|�dd��dS)Nr�r�z50 000r�rBs r*r�z TestfrFRDelocalizeTest.test_atoi�r�r6Nr�r;r6r*r�r��r�r6r�c��eZdZdd�ZdS)�BaseLocalizeTestFc�Z�|�tj||���|��dS)Nr�)rkr �localize)r4rmrnrLs    r*�_test_localizezBaseLocalizeTest._test_localize�s-���������B�B�B�C�H�H�H�H�Hr6N)F)r7r8r9r�r;r6r*r�r��s.������I�I�I�I�I�Ir6r�c��eZdZd�ZdS)�TestEnUSLocalizec��|�dd��|�d�td����d��dS)Nr�z{0:.16f}z1.15z1.1500000000000000)r�rlrrBs r*�
test_localizezTestEnUSLocalize.test_localize�sY�����J�
�3�3�3�������g�f�o�o�.�.�0D�	F�	F�	F�	F�	Fr6N�r7r8r9r�r;r6r*r�r��s(������F�F�F�F�Fr6r�c��eZdZd�ZdS)�
TestCLocalizec�2�|�dd��dSr��r�rBs r*r�zTestCLocalize.test_localize�s�����J�
�3�3�3�3�3r6Nr�r;r6r*r�r��s#������4�4�4�4�4r6r�c��eZdZd�ZdS)�TestfrFRLocalizec�b�|�dd��|�ddd���dS)Nr�r�r�Tr�r�rBs r*r�zTestfrFRLocalize.test_localize�s9�����J�
�3�3�3����J��d��C�C�C�C�Cr6Nr�r;r6r*r�r��s(������D�D�D�D�Dr6r��__main__)*�decimalr�test.supportrrrr�test.support.warnings_helperrrr rr��TestCaser
r=rFr]rf�objectrir}r�r�r�r�r�r�r�r�r	rBrqr~r�r�r�r�r�r�r7�mainr;r6r*�<module>r�sQ��������D�D�D�D�D�D�D�D�D�D�D�D�7�7�7�7�7�7�����
�
�
�
�
�
�
�
�
�
�
�
�(P�(P�(P�(P�(P��)�(P�(P�(P�V	)�	)�	)�	)�	)�X�&�	)�	)�	)������.����0�����^����2�����^����4E�E�E�E�E��E�E�E�,F&�F&�F&�F&�F&�-�F&�F&�F&�RH�H�H�H�H�8�,�H�H�H�*�*�*�*�*�X�.�*�*�*�$)�)�)�)�)�,�.B�)�)�)�/�/�/�/�/�~�/C�/�/�/�M�M�M�M�M�K�);�M�M�M�'/�'/�'/�'/�'/�~�/A�'/�'/�'/�T=�=�=�=�=�H�%�=�=�=�"C�C�C�C�C�)�=�C�C�C�Bl+�l+�l+�l+�l+�H�%�l+�l+�l+�^`@�`@�`@�`@�`@��)�`@�`@�`@�F	2�	2�	2�	2�	2�*�	2�	2�	2�)�)�)�)�)��);�)�)�)�	(�	(�	(�	(�	(�+�'9�	(�	(�	(�)�)�)�)�)�^�-?�)�)�)�I�I�I�I�I�(�I�I�I�F�F�F�F�F�~�'7�F�F�F�4�4�4�4�4�K�!1�4�4�4�D�D�D�D�D�~�'7�D�D�D��z����H�M�O�O�O�O�O��r6