403Webshell
Server IP : 121.121.20.254  /  Your IP : 216.73.217.51
Web Server : Microsoft-IIS/10.0
System : Windows NT WEB-SERVER 10.0 build 20348 (Windows Server 2022) AMD64
User : IUSR ( 0)
PHP Version : 8.3.28
Disable Function : NONE
MySQL : ON  |  cURL : ON  |  WGET : OFF  |  Perl : OFF  |  Python : OFF  |  Sudo : OFF  |  Pkexec : OFF
Directory :  C:/Python313/Lib/test/__pycache__/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : C:/Python313/Lib/test/__pycache__/test_configparser.cpython-313.pyc
�

��i�e��N�SSKrSSKrSSKrSSKrSSKrSSKrSSKJr SSKJ	r	 "SS\R5r"SS5r"SS	\5r
"S
S\
\R5r"SS
\
\R5r"SS\
\R5r"SS\R5r"SS\5r"SS\5r"SS\
\R5r"SS\
\R5r"SS\5r"SS\\R5r"SS\
\R5r"S S!\5r"S"S#\5r"S$S%\\R5r"S&S'\\R5r"S(S)\\R5r"S*S+\R5r"S,S-\5r "S.S/\\R5r!"S0S1\
\R5r""S2S35r#S4r$"S5S6\R5r%"S7S8\R5r&"S9S:\R5r'"S;S<\R5r("S=S>\R5r)"S?S@\
\R5r*"SASB\R5r+"SCSD\R5r,"SESF\R5r-\.SG:Xa\R^"5 gg)H�N)�support)�	os_helperc�<�\rSrSrSrSrSrSrSrSr	\r
Srg	)
�
SortedDict�c�H�[URR55$�N)�sorted�data�items��selfs �+C:\Python313\\Lib\test\test_configparser.pyr�SortedDict.itemss���d�i�i�o�o�'�(�(�c�H�[URR55$r	)r
r�keysr
s rr�SortedDict.keyss���d�i�i�n�n�&�'�'rc�R�UR5Vs/sHoSPM	 sn$s snf)N�)r)r�is  r�values�SortedDict.valuess"��"�j�j�l�+�l��!��l�+�+��+s�$c�4�[UR55$r	)�iterrr
s r�	iteritems�SortedDict.iteritemss���D�J�J�L�!�!rc�4�[UR55$r	)rrr
s r�iterkeys�SortedDict.iterkeyss���D�I�I�K� � rc�4�[UR55$r	)rrr
s r�
itervalues�SortedDict.itervaluess���D�K�K�M�"�"r�N)�__name__�
__module__�__qualname__�__firstlineno__rrrrrr"�__iter__�__static_attributes__r$rrrrs'��)�(�,�"�!�#��Hrrc��\rSrSrSrSrSrSrSr\	RrSr\	Rr\	RrS
SjrS
SjrS	rg)�CfgParserTestCaseClass�#F)�=�:)�;�#TNc
��[UURURURURUR
URURURURS9
nUR"S0UD6nU$)N)
�defaults�allow_no_value�
delimiters�comment_prefixes�inline_comment_prefixes�empty_lines_in_values�	dict_type�strict�default_section�
interpolationr$)�dictr4r5r6r7r8r9r:r;r<�config_class)rr3�	arguments�instances    r�	newconfig� CfgParserTestCaseClass.newconfig.st�����.�.����!�2�2�$(�$@�$@�"&�"<�"<��n�n��;�;� �0�0��,�,�
�	��$�$�1�y�1���rc�J�URU5nURU5 U$r	)rA�read_string)r�stringr3�cfs    r�
fromstring�!CfgParserTestCaseClass.fromstring>s!��
�^�^�H�
%��
���v���	rr$r	)r%r&r'r(r4r5r6r7r8�configparser�
_default_dictr9r:�DEFAULTSECTr;�_UNSETr<rArGr*r$rrr,r,#sN���N��J�!��(�� ���*�*�I�
�F�"�.�.�O� �'�'�M�� rr,c��\rSrSrSrSrSrSrSrSr	Sr
S	rS
rSr
SrS
rSrSrSrSrSrSrSrSrSrSrSrSrg)�
BasicTestCase�Dc�N!�/SQnUR(aURS5 UR5 SS/nUR5nUR5 URnU"XB5 URS5nUR5 U"XC5 UVs/sHofPM nnUR5 URUR5 UR5 U"XB5 USR5n[[U55nU"XC5 UR5n[[U55nUR	[U5[U55 UHupvU"XvR5 M U"UR5XR5 U"URSS5S5 U"URS	S5S
5 U"URSS5S5 U"URSS5S
5 U"URSS5S5 U"URSS5S
5 U"URSS5S5 U"URSS5S5 U"URSS5S5 U"URSS5S5 URURSS5S5 U"URSS5S5 U"UR!SS5S5 U"URSS5S5 U"URS S!5S"5 UR(aU"URSS#5S5 U"URSSSS$9S5 U"URSSSS0S%9S5 UR#[$R&5 URS&S5 SSS5 UR#[$R(5 URSS'5 SSS5 U"URS&SSS$9S5 U"URSS'SS$9S5 U"URS	SSS$9S
5 U"URS(SSS$9S5 U"URSSS)S$9S5 U"URSS*S)S$9S)5 U"URSS*S+S$9S+5 UR#[$R(5 URSS*5 SSS5 URURSSS,S$9S5 URURSS-S,S$9S,5 U"URSS-S.S$9S.5 UR#[$R(5 URSS-5 SSS5 U"UR!SSS/S$9S5 U"UR!SS0S1S$9S15 U"UR!SS0S/S$9S/5 UR#[$R(5 UR!SS05 SSS5 U"UR!S2SS/S$9S/5 UR(a0U"URSS#SS$9S5 U"URSS3SS$9S5 U"USSS5 U"US	SS
5 USnU"URS5 UR+UR,U5 UR#[.5 S4Ul
SSS5 UR#[.5 S5UlSSS5 U"USS5 U"USS
5 U"USSS5 U"USSS
5 U"USSS5 U"USSS5 U"US6SS75 UR(aU"USS#S5 U"USRSS5S5 U"USRSSS$9S5 U"USRSSS0S%9S5 UR#[05 US&S SSS5 UR#[05 USS' SSS5 UR#[05 US&RSSS$9 SSS5 U"USRS'S5S5 U"USRS'SS$9S5 U"USRS'5S5 U"US	RSS5S
5 U"US	RSSS$9S
5 UR#[05 US(RSS5 SSS5 U"USRSS)5S5 U"USRSS)S$9S5 U"USRS*S)5S)5 U"USRS*S)S$9S)5 U"USRS*S+5S+5 U"USRS*S+S$9S+5 U"USRS*5S5 URUSRSS,5S5 URUSRSS,S$9S5 URUSRS-S,5S,5 URUSRS-S,S$9S,5 U"USRS-S.5S.5 U"USRS-S.S$9S.5 U"USRS-5S5 U"USR!SS/5S5 U"USR!SS/S$9S5 U"USR!S0S15S15 U"USR!S0S1S$9S15 U"USR!S0S/5S/5 U"USR!S0S/S$9S/5 U"USR!S05S5 UR(alU"USRS#S5S5 U"USRS#SS$9S5 U"USRS3S5S5 U"USRS3SS$9S5 S8XRS9'S:XRS;'UR3UR5S55 UR7UR9SS55 UR7UR5S55 UR7UR5UR55 UR3UR;SS5S<5 UR7UR9SS5S=5 UR7UR;SS5S>5 UR3UR9SS955 UR7UR;SS955 UR3UR;URS955 UR7UR9SS955 UR7UR;URS955 UR#[$R&5nUR;S?S5 SSS5 UR	WR<R>S@5 U"URS6S5S75 US	UR7SU;5 UR#[05 US	SSS5 UR#[@5 XR	SSS5 US	S	UR7SUS	;5 UR#[05 US	S	SSS5 UR3S;US	;5 UR#[05 US	S;	SSS5 XRS;	UR7S;US	;5 UR#[05 XRS;	SSS5 UR#[05 US?S	SSS5 gs snf!,(df   GN�=f!,(df   GN�=f!,(df   G
N�=f!,(df   G
N@=f!,(df   G	N�=f!,(df   G	N=f!,(df   GN�=f!,(df   GN=f!,(df   GN=f!,(df   GN�=f!,(df   GN;=f!,(df   GNo=f!,(df   GN
=f!,(df   GN�=f!,(df   GN�=f!,(df   GN�=f!,(df   GNY=f!,(df   g=f)AN)
�
Commented Bar�Foo Bar�Internationalized Stuff�	Long Line�Section\with$weird%characters[	�Spaces�
Spacey Bar�Spacey Bar From The Beginning�Types�This One Has A ] In It�NoValue)�baz�qwe)�foo�bar3rXrRr^�bar1rW�bar2r_r\r]rQ�bar4rV�key with spaces�value�another with spaces�splat!rY�int�*�42�float�)\��(�?z0.44�booleanF�123�strange but acceptablerZ�forks�spoons�option-without-value��fallback��varszNo Such Foo Barzno-such-foozNo Such Spacey Bar�zno-such-int�18gz
no-such-floatz0.0Tzno-such-boolean�yesz
No Such Typeszno-such-option-without-valuezName is read-onlyzParser is read-onlyrT�7this line is much, much longer than my editor
likes it.�1�
this_value�2�
that_valuez4remove_option() failed to report existence of optionz'remove_option() failed to remove optionzIremove_option() failed to report non-existence of option that was removed�No Such Section)r~)!r4�append�sort�sections�assertEqualrr;r
�list�len�namer3�get�getint�assertAlmostEqual�getfloat�
getboolean�assertRaisesrI�NoSectionError�
NoOptionError�assertIs�parser�AttributeError�KeyError�
assertTrue�remove_section�assertFalse�
has_option�
remove_option�	exception�args�
ValueError)	rrF�E�F�L�eq�sectionr��cms	         r�
basic_test�BasicTestCase.basic_testFs���

�����
�H�H�Y��	����
�_�-��
�K�K�M��	����
�
�
��
�1���H�H�4�5��	����
�1��%'�'�B��W�B��'�	����	����%�%�&�	����
�1���.�/�5�5�7���4��7�O��
�1���H�H�J���4��7�O������Q���Q��(��M�D��t�\�\�"��
�2�;�;�=�"�1�1�2�3�	�2�6�6�)�U�#�V�,�
�2�6�6�,��&��/�
�2�6�6�1�5�9�6�B�
�2�6�6�1�5�9�5�A�
�2�6�6�/�5�)�6�2�
�2�6�6�/�5�)�5�1�
�2�6�6�(�-�.��8�
�2�6�6�(�1�2�H�=�
�2�9�9�W�e�$�b�)�
�2�6�6�'�5�!�4�(����r�{�{�7�G�<�d�C�
�2�6�6�'�7�#�V�,�
�2�=�=��)�,�e�4�
�2�6�6�'�5�!�#;�<�
�2�6�6�*�G�4�h�?�����r�v�v�i�!7�8�$�?�	�2�6�6�)�U�U�6�3�V�<�
�2�6�6�)�U�%���6�8�%�@�
�
�
�|�:�:�
;��F�F�$�e�,�<�
�
�
�|�9�9�
:��F�F�9�m�,�;�
�2�6�6�#�U�U�6�;�U�C�
�2�6�6�)�]�U�6�;�U�C�
�2�6�6�,���6�5�v�>�
�2�6�6�&���6�=�t�D�
�2�9�9�W�e�b�9�1�2�6�
�2�9�9�W�m�b�9�9�2�>�
�2�9�9�W�m�d�9�;�T�B�
�
�
�|�9�9�
:��I�I�g�}�-�;����r�{�{�7�G�47� +� 9�:>�	@����r�{�{�7�O�47� +� 9�:=�	?�
�2�;�;�w��%�;�@�%�H�
�
�
�|�9�9�
:��K�K���1�;�
�2�=�=��)�d�=�;�U�C�
�2�=�=��"3�e�=�D��	�
�2�=�=��"3�d�=�C�T�J�
�
�
�|�9�9�
:��M�M�'�#4�5�;�
�2�=�=��)�d�=�C�T�J�����r�v�v�i�!7�%�v�H�$�O��r�v�v�i�!?�$��&�',�
.�	�2�i�=����(�
�2�l��E�"�F�+��4�5��
�7�<�<�8�9��
�
�g�n�n�b�)�
�
�
�~�
.�.�G�L�/�
�
�
�~�
.�2�G�N�/�
�7�5�>�6�"�
�7�5�>�5�!�
�2�o��u�%�v�.�
�2�o��u�%�u�-�
�2�h�<�)�*�G�4�
�2�h�<�-�.��9�
�2�k�?�5�!�E�	G�����r�)�}�3�4�d�;�
�2�i�=���U�E�*�F�3�
�2�i�=���U�U��3�V�<�
�2�i�=���U�%����8�%�@�
�
�
�x�
(�� �!�%�(�)�
�
�
�x�
(��y�M�-�(�)�
�
�
�x�
(�� �!�%�%�e�e�%�<�)�
�2�i�=���]�E�2�E�:�
�2�i�=���]�U��;�U�C�
�2�i�=���]�+�T�2�
�2�l�����t�,�f�5�
�2�l�������5�v�>�
�
�
�x�
(��#�$�(�(���5�)�
�2�g�;���e�R�(�"�-�
�2�g�;���e�b��1�2�6�
�2�g�;���m�R�0�"�5�
�2�g�;���m�b��9�2�>�
�2�g�;���m�T�2�D�9�
�2�g�;���m�d��;�T�B�
�2�g�;���m�,�d�3����r�'�{�3�3�G�S�A�4�H����r�'�{�3�3�G�=@� 4� B�CG�	I����r�'�{�3�3�O�S�I�3�O����r�'�{�3�3�O�=@� 4� B�CF�	H�
�2�g�;�����7��?�
�2�g�;����%��@�%�H�
�2�g�;����0�$�7�
�2�g�;�!�!�)�T�2�E�:�
�2�g�;�!�!�)�d�!�;�U�C�
�2�g�;�!�!�"3�U�;�U�C�
�2�g�;�!�!�"3�e�!�D��	�
�2�g�;�!�!�"3�T�:�D�A�
�2�g�;�!�!�"3�d�!�C�T�J�
�2�g�;�!�!�"3�4�d�;�����r�)�}� � �!7��?��F��r�)�}� � �!7�%� �H�$�O��r�)�}� � �!?��G��O��r�)�}� � �!?�$�!�&�',�
.�25���� ��.�14���� ��.�	
����)�)�(�3�4�������x�1B�C�D�����*�*�8�4�5�����*�*�4�+?�+?�@�A�����(�(��E�:�N�	P�������y�%�8�=�	?�����)�)�)�U�;�(�	)�	
����
�
�i��>�?�����)�)�)�\�B�C�����(�(��)=�)=�|�L�M�������y�,�?�@�����)�)�$�*>�*>��M�N�
�
�
�|�:�:�
;�r����.��6�<�������*�*�,@�A�
�2�6�6�+�u�%�E�	G�
�w�K�����B��'�
�
�
�x�
(��7��)�
�
�
�z�
*��'�'�(�+��|��U�#�����"�\�"2�2�3�
�
�
�x�
(��<� ��'�)������<�(8�8�9�
�
�
�x�
(��<� ��.�)��#�#�$�\�2������L�)9�9�:�
�
�
�x�
(��'�'�(��6�)�
�
�
�x�
(��$�%�e�,�)�
(��}
(�R<�
;��
:�
:��;�
:��;�
:��;�
:��/�
.��
.�
.�� )�
(��
(�
(��
(�
(��)�
(��r<�
;��)�
(��
*�
*��)�
(��)�
(��)�
(��
(�
(�s��}�}$�}6�:~�~�~,�+~>��
	"�0	4�A@�A@�/A@*�5A@<�
AA�AA �AA2�"AB�AB�$
}3�6
~�
~�
~)�,
~;�>

�
�"
1�4
A@�@
A@�@
A@'�@*
A@9�@<
AA�A
AA�A 
AA/�A2
AB�B
AB�B
AB$c��SRURUR5nUR(aUS-
nUR	U5nURU5 UR(a�UR[R5 UR[R"SRUR555 SSS5 UR[R5 UR[R"SRUR555 SSS5 gUR[R"SRUR555 UR[R"SRUR555 g!,(df   N�=f!,(df   g=f)Nax[Foo Bar]
foo{0[0]}bar1
[Spacey Bar]
foo {0[0]} bar2
[Spacey Bar From The Beginning]
  foo {0[0]} bar3
  baz {0[0]} qwe
[Commented Bar]
foo{0[1]} bar4 {1[1]} comment
baz{0[0]}qwe {1[0]}another one
[Long Line]
foo{0[1]} this line is much, much longer than my editor
   likes it.
[Section\with$weird%characters[	]
[Internationalized Stuff]
foo[bg]{0[1]} Bulgarian
foo{0[0]}Default
foo[en]{0[0]}English
foo[de]{0[0]}Deutsch
[Spaces]
key with spaces {0[1]} value
another with spaces {0[0]} splat!
[Types]
int {0[1]} 42
float {0[0]} 0.44
boolean {0[0]} NO
123 {0[1]} strange but acceptable
[This One Has A ] In It]
  forks {0[0]} spoons
z[NoValue]
option-without-value
z�                    [Duplicate Options Here]
                    option {0[0]} with a value
                    option {0[1]} with another value
                z�                    [And Now For Something]
                    completely different {0[0]} True
                    [And Now For Something]
                    the larch {0[1]} 1
                z�                [Duplicate Options Here]
                option {0[0]} with a value
                option {0[1]} with another value
            z�                [And Now For Something]
                completely different {0[0]} True
                [And Now For Something]
                the larch {0[1]} 1
            )�formatr5r6r4rGr�r:r�rI�DuplicateOptionErrorrD�textwrap�dedent�DuplicateSectionError�r�
config_stringrFs   r�
test_basic�BasicTestCase.test_basic&sb���<�F�4�?�?�D�1�1�2�=	�>����)�
�M��_�_�]�
+��������;�;��"�"�<�#D�#D�E����x���0��F�4�?�?�+�	 -�.�F��"�"�<�#E�#E�F����x���0�
�F�4�?�?�+� -�.�G�F�
�N�N�8�?�?�,���t���'�	)�
*�
�N�N�8�?�?�,�
��t���'�)�
*�)F�E��G�F�s�?F:�5?G�:
G�
Gc
���SS0SS0SSS.SSS.SS00S	S
SSS
.SSS.SSSSS.SS0S.
nUR(aURSSS005 UR5nURU5 UR	U5 UR
(aUR
[R5 URSS0SS0S.5 SSS5 UR
[R5 URSS S!S".05 SSS5 gURSS0SS0S#.5 URSS S!S".05 g!,(df   N|=f!,(df   g=f)$Nr^r`rar_r])r^r\rbry�	Bulgarian�Default�English�Deutsch)zfoo[bg]r^zfoo[en]zfoo[de]rdrf)rcrerhrkFrn)rgrjrl�{rorp)
rRrWrXrQrTrUrSrVrYrZr[rq�key�key2�value2)rzrzDuplicate Options Herezwith a valuezwith another value)�option�OPTION)r��SECTION)
r4�updaterA�	read_dictr�r:r�rIr�r��r�configrFs   r�test_basic_from_dict�"BasicTestCase.test_basic_from_dictis����v���v����.�
���
���2�'� �$�$�	(�$+�'/��
�� �-�	���'�K(
��R����M�M��*�D���
�
�^�^�
��
���V��������;�;��"�"�<�#E�#E�F������)���)���G�
�"�"�<�#D�#D�E����,�"0�"6�/���F�E�
�L�L�!�7�+�"�H�-��
�
�L�L�(�,�2�+��
�#G�F��
F�E�s�1E�1E�
E�
Ec�2�UR5nURS5 URS5 URS5 UR5nUR5 URnU"U/SQ5 URSSS5 U"UR
S5S/5 U"URSS5SS5 UR[R5 URSSS5 SSS5 URURSS55 URURSS55 URSSS	5 S
H%nURURSU5S5 M' U"UR
S5S/5 U"UR
S5S/5 URSS5 U"UR
S5/5 URS
R!UR"S55nU"UR
S5S/5 U"URSS5S5 URSR!UR"S5SS0S9nURURSS55 g!,(df   GN�=f)N�A�a�B)r�r�r�rd�b�@could not locate option, expecting case-insensitive option names�A-B�	A-B value��a-bzA-bza-Br��9has_option() returned false for option which should existr��3[MySection]
Option{} first line   
	second line   
r�	MySectionr��Option�first line
second line�[section]
nekey{}nevalue
r��r3r��Key)rA�add_sectionr�r�r��set�optionsr�r�rIr�r�r�r�r�rGr�r5)rrFr�r��opts     r�test_case_sensitivity�#BasicTestCase.test_case_sensitivity�s&��
�^�^�
��
���s��
���s��
���s���K�K�M��	����
�
�
��
�1�o��
���s�C��!�
�2�:�:�c�?�S�E�"�
�2�6�6�#�s��W�M�	O�
�
�
�|�:�:�
;��F�F�3��W�%�<�	
����
�
�c�3�/�0�������s�C�0�1�
���s�E�;�'�/�C��O�O��
�
�c�3�'�K�
M�0�	�2�:�:�c�?�U�G�$�
�2�:�:�c�?�S�E�"�
����c�"�
�2�:�:�c�?�B���_�_�E�L�L�����"�
$�%��	�2�:�:�k�"�X�J�/�
�2�6�6�+�x�(�*C�D��_�_�0�06��t���q�7I�0J�',�W�o��7��	
����
�
�i��7�8�5<�
;�s� J�
Jc	�*�UR5n0US'SS0US'0US'UVs/sHo"PM nnUR5 URnURnU"U[	SSUR
S/55 U"USR
5S15 U"USSSS5 UR[5 SUSS'SSS5 URSUS;5 SUSS'S	HnURXaS;S
5 M U"USR
5S15 U"USR
5S15 USS	U"USR
505 URSRURS
55nU"USR
5S15 U"USSS5 URSRURS
5SS0S9nURSUS;5 gs snf!,(df   GNF=f)Nr�r�rdr�r�r�r�r�r�r�r�r�rr�r�r�r�r�r�r�r�r�)
rAr�r��assertCountEqualr
r;rr�r�r�rGr�r5)rrFr�r�r��elem_eqr�s       r�$test_case_sensitivity_mapping_access�2BasicTestCase.test_case_sensitivity_mapping_access�s��
�^�^�
����3����.��3����3��$&�'�B��W�B��'�	����
�
�
���'�'��
�1�f�c�3�� 4� 4�c�:�;�<�
�2�c�7�<�<�>�C�5�!�
�2�c�7�3�<��M�	O�
�
�
�x�
(�"�B�s�G�C�L�)�	
����r�#�w��'�$��3����/�C��O�O��#�w��K�
M�0�	�2�c�7�<�<�>�E�7�#�
�2�c�7�<�<�>�C�5�!��s�G�C�L���3������#��_�_�E�L�L�����"�
$�%��	�2�k�?���!�H�:�.�
�2�k�?�8�$�&?�@��_�_�0�06��t���q�7I�0J�',�W�o��7��	
�����I��.�/��C
(�)�
(�s�G>�;	H�
Hc��URSS05nURURURS5SS5 URSS05nURURURS5SS5 g)Nr^�Bar�Foor�z<could not locate option, expecting case-insensitive defaults)rAr�r�r;�rrFs  r�test_default_case_sensitivity�+BasicTestCase.test_default_case_sensitivitysx��
�^�^�U�E�N�
+������F�F�4�'�'��/��N�	P��^�^�U�E�N�
+������F�F�4�'�'��/��J�	Lrc�v�UR5nURU[RSR	UR
S55 URU[RSR	UR
S55 URU[RS5nURURS5 UR(d�URU[RS5nURURS5 [R"SS	S
9nUR
SS:Xa[RnU4nO[RnUSS4n[US
S9nURXU5nSSS5 URURU5 gg!,(df   N,=f)Nz[Foo]
{}val-without-opt-name
rr�No Section!
)�<???>rr�z[Foo]
  wrong-indent
)r��cfgparser.3�
configdata��subdirr.z.  # INI with as many tricky parts as possible
�utf-8��encoding)
rA�parse_errorrI�ParsingErrorr�r5�MissingSectionHeaderErrorr�r�r4r�findfile�open)rrF�e�tricky�error�expected�fs       r�test_parse_errors�BasicTestCase.test_parse_errorssu��
�^�^�
������\�6�6�4�4:�F�4�?�?�1�;M�4N�	P�	
����\�6�6�4�4:�F�4�?�?�1�;M�4N�	P�
���R��!G�!G�,�
.��������!>�?��"�"�� � ��\�%>�%>� 9�;�A����Q�V�V�Z�0��%�%�m�L�I�F����q�!�S�(�$�1�1��"�9��$�>�>��"�A�M�O���f�w�/�1��$�$�R��2��0����Q�V�V�X�.�#�0�/�s�1F*�*
F8c��[US5(aUnO[R"U5nURU5nUR	U5 SSS5 UR
$!,(df   WR
$=f)N�readline)�hasattr�io�StringIOr��	read_filer�)rrF�exc�src�sior�s      rr��BasicTestCase.parse_error-s`���3�
�#�#��C��+�+�c�"�C�
�
�
�s�
#�r��L�L���$��|�|��$�
#��|�|��s�A"�"
A;c���UR5nURUR5/S5 URUR	S5S5 UR[R5 URS5 SSS5 UR[R5 URSSS5 SSS5 URU[RSS5nURURS5 URS5 URU[RSS5nURURS5 g!,(df   N�=f!,(df   N�=f)	Nz0new ConfigParser should have no defined sectionsr�z5new ConfigParser should have no acknowledged sectionsr^�barrd)r^)rr^)rAr�r�r��has_sectionr�rIr�r�r��	get_errorr�r�r��rrFr�s   r�test_query_errors�BasicTestCase.test_query_errors6s��
�^�^�
����������K�	M��������.�$�	%��
�
�|�:�:�
;��J�J�u��<�
�
�
�|�:�:�
;��F�F�5�%��)�<��N�N�2�|�:�:�E�5�I���������*�
���u���N�N�2�|�9�9�5�%�H���������0�<�
;��
;�
;�s�2E�+E&�
E#�&
E4c��URX45 URSUR<SUR<35 g!UanUsSnA$SnAff=f)Nzexpected exception type �.)r��failr&r')rrFr�r�r�r�s      rr�BasicTestCase.get_errorGsL��	<��F�F�7�#�
�I�I�����)9�)9�;�
<���	��H��	�s�A�A�A�A�Ac�Z�URSRURSS95n[SS5HpnUR	URSSU-55 UR
URSSU-55 UR[UR
SS	U-5 Mr g)
Nz�[BOOLTEST]
T1{equals}1
T2{equals}TRUE
T3{equals}True
T4{equals}oN
T5{equals}yes
F1{equals}0
F2{equals}FALSE
F3{equals}False
F4{equals}oFF
F5{equals}nO
E1{equals}2
E2{equals}foo
E3{equals}-1
E4{equals}0.1
E5{equals}FALSE AND MOREr��equalsr��BOOLTESTzt%dzf%dze%d)	rGr�r5�ranger�r�r�r�r�)rrF�xs   r�test_boolean�BasicTestCase.test_booleanPs���
�_�_�
'�(.�v�T�_�_�Q�5G�v�'H�!��$�q�!��A��O�O�B�M�M�*�e�a�i�@�A����R�]�]�:�u�q�y�A�B����j� �m�m�Z����
D�rc	� �UR5nURS5 UR[R5nURS5 SSS5 WR
nUR
[U5S5 UR
URS5 UR(Ga+UR[R5nUR[R"SRURSS95SS9 SSS5 UR
nUR
[U5S	5 UR
URS
5 UR[R5nUR!SSS
S.05 SSS5 UR
nUR
[U5S5 UR
URS5 gg!,(df   GN�=f!,(df   N�=f!,(df   Nv=f)Nr�zSection 'Foo' already exists)r�NNz�                    [Foo]
                    will this be added{equals}True
                    [Bar]
                    what about this{equals}True
                    [Foo]
                    oops{equals}this won't
                rr
�	<foo-bar>��sourcezFWhile reading from '<foo-bar>' [line  5]: section 'Foo' already exists)r�rrr��valzis really `opt`)r��OPTzIWhile reading from '<dict>': option 'opt' in section 'Bar' already exists)r�r�z<dict>N)rAr�r�rIr�r�r��strr�r:rDr�r�r�r5r�r�)rrFr�r�s    r�test_weird_errors�BasicTestCase.test_weird_errorsis���
�^�^�
��
���u��
�
�
�|�A�A�
B�b��N�N�5�!�C��L�L������Q��!?�@�������!4�5��;�;�;��"�"�<�#E�#E�F�"����x���0��F�$�/�/�!�"4�F�5� 7�@K��L�G����A����S��V�&O�
P����Q�V�V�%<�=��"�"�<�#D�#D�E�����e�U�;L�%M�N�O�F����A����S��V�&M�
N����Q�V�V�%C�D�)�
C�
B��G�F��F�E�s$�G�?G.�8G?�
G+�.
G<�?
H
c��UR5n[R"SRURSS95nUR
(a:UR
[R5 URU5 SSS5 OURU5 URURSS5S5 g!,(df   N1=f)Nz_            [Foo]
            x{equals}1
            y{equals}2
            y{equals}3
        rr
r�rrz)rAr�r�r�r5r:r�rIr�rDr�r�)rrF�inis   r�%test_get_after_duplicate_option_error�3BasicTestCase.test_get_after_duplicate_option_error�s���
�^�^�
���o�o��

�F�$�/�/�!�,�F�-�/���;�;��"�"�<�#D�#D�E����s�#�F�E�
�N�N�3���������s�+�S�1�	F�E�s�1C�
Cc��SRURURSURS9nUR(aUS-
nURU5nSH�n[R"5nURXCS9 URSnU(aSRU5nSRUURS	9nUR(aUS
-
nURUR5U5 M� g)Na8[Long Line]
foo{0[0]} this line is much, much longer than my editor
   likes it.
[{default_section}]
foo{0[1]} another very
 long line
[Long Line - With Comments!]
test {0[1]} we        {comment} can
            also      {comment} place
            comments  {comment} in
            multiline {comment} values
r)�commentr;z![Valueless]
option-without-value
)TF)�space_around_delimitersz {} z�[{default_section}]
foo{equals}another very
	long line

[Long Line]
foo{equals}this line is much, much longer than my editor
	likes it.

[Long Line - With Comments!]
test{equals}we
	also
	comments
	multiline

)rr;z"[Valueless]
option-without-value

)r�r5r6r;r4rGr�r��writer��getvalue)rr�rFr$�output�	delimiter�
expect_strings       r�
test_write�BasicTestCase.test_write�s��
�������1F�1F�q�1I�(,�(<�(<��>�	�����
%�
�M�
�_�_�]�
+��'4�#��[�[�]�F��H�H�V�H�M�����*�I�&�"�M�M�)�4�	�
��V�9�,0�,@�,@��B�
�"�"�"����
�

���V�_�_�.�
�>�;(5rc�t�URSRURSS95n"SS[5nUR	SSS5 UR	SSU"S55 UR	SS	S5 UR	SS	U"S55 UR	SSS5 UR	SS	S5 g)
N�[sect]
option1{eq}foo
r�r�c��\rSrSrSrg)�2BasicTestCase.test_set_string_types.<locals>.mystri�r$N)r%r&r'r(r*r$rr�mystrr0�s��rr1�sect�option1�splat�option2)rGr�r5rr�)rrFr1s   r�test_set_string_types�#BasicTestCase.test_set_string_types�s���
�_�_�0�06��$�/�/�!�:L��0M�O��	�C�	�
���v�y�'�*�
���v�y�%��.�1�
���v�y�'�*�
���v�y�%��.�1�
���v�y�'�*�
���v�y�'�*rc�:�URSS:waURS5 [R"SSS9nUR	5nURUS/SS	9nUR
X1/5 UR
URS
S5S5 UR	5nURUSS	9nUR
X1/5 UR
URS
S5S5 UR	5nUR[R"U5SS	9nUR
X1/5 UR
URS
S5S5 UR	5nUR[R"U5U/SS	9nUR
X1U/5 UR
URS
S5S5 UR	5nURS/SS	9nUR
U/5 UR	5nUR/SS	9nUR
U/5 g)
Nrr.�incompatible format�cfgparser.1r�r��nonexistent-filer�r�rRr^�newbar)
r5�skipTestrr�rA�readr�r�r�FakePath)r�file1rF�parsed_filess    r�test_read_returns_file_list�)BasicTestCase.test_read_returns_file_list�s����?�?�1���$��M�M�/�0�� � ��|�D��
�^�^�
���w�w��'9�:�W�w�M������w�/�������	�5�1�8�<�
�^�^�
���w�w�u�w�w�7������w�/�������	�5�1�8�<�
�^�^�
���w�w�y�1�1�%�8�7�w�K������w�/�������	�5�1�8�<�
�^�^�
���w�w�	� 2� 2�5� 9�5�A�G�w�T������u�~�6�������	�5�1�8�<�
�^�^�
���w�w� 2�3�g�w�F������r�*�
�^�^�
���w�w�r�G�w�4������r�*rc���URSS:waURS5 [R"SSS9R	5nUR5nUR
USS9nURX1/5 UR5nUR
S	SS9nURU/5 UR5nUR
US	/SS9nURX1/5 g)
Nrr.r9r:r�r�r�r�snonexistent-file)r5r=rr��encoderAr>r�)r�file1_bytestringrFrAs    r�0test_read_returns_file_list_with_bytestring_path�>BasicTestCase.test_read_returns_file_list_with_bytestring_path�s����?�?�1���$��M�M�/�0�"�+�+�M�,�O�V�V�X��
�^�^�
���w�w�/�'�w�B������'9�:�
�^�^�
���w�w�2�W�w�E������r�*�
�^�^�
���w�w� 0�2E�F�QX�w�Y������'9�:rc�X�URSRURSS95$)Nah[Foo]
bar{equals}something %(with1)s interpolation (1 step)
bar9{equals}something %(with9)s lots of interpolation (9 steps)
bar10{equals}something %(with10)s lots of interpolation (10 steps)
bar11{equals}something %(with11)s lots of interpolation (11 steps)
with11{equals}%(with10)s
with10{equals}%(with9)s
with9{equals}%(with8)s
with8{equals}%(With7)s
with7{equals}%(WITH6)s
with6{equals}%(with5)s
With5{equals}%(with4)s
WITH4{equals}%(with3)s
with3{equals}%(with2)s
with2{equals}%(with1)s
with1{equals}with

[Mutual Recursion]
foo{equals}%(bar)s
bar{equals}%(foo)s

[Interpolation Error]
name{equals}%(reference)s
rr
)rGr�r5r
s r�get_interpolation_config�&BasicTestCase.get_interpolation_configs1�����
*�.+1�&�����8J�&�*K�1M�	Mrc�f�URSRUR5SS0S9n[UR	SSS0S95nUR5 UR
X15 UR[R5 UR	S5 SSS5 g!,(df   g=f)	Nz�
            [section]
            name {0[0]} %(value)s
            key{0[1]} |%(name)s|
            getdefault{0[1]} |%(default)s|
        �default�	<default>r�r�rdrtzno such section)
rGr�r5r�rr�r�r�rIr�)rr�rFr�s    r�check_items_config� BasicTestCase.check_items_config)s���
�_�_��

�F�4�?�?�#�y�+�.F��H��
����)�7�G�*<��=�>��	��������%�
�
�
�|�:�:�
;��H�H�&�'�<�
;�
;�s�B"�"
B0c��URSRUR5SS0S9nURUR	5SS5 URUR	5SS5 URUR	5SS5 UR[5 UR	5 SSS5 g!,(df   g=f)	N��
            [section1]
            name1 {0[0]} value1
            [section2]
            name2 {0[0]} value2
            [section3]
            name3 {0[0]} value3
        rMrNr�r�section1�section2�section3)rGr�r5r��popitemr�r�r�s  r�test_popitem�BasicTestCase.test_popitem6s���
�_�_��
�F�4�?�?�#�y�+�.F��H��	
�������a��*�5��������a��*�5��������a��*�5�
�
�
�x�
(��J�J�L�)�
(�
(�s�*C�
Cc� �URSS05nURURURS5SS5 SSS.US'URUR	5S/5 UR[USR
551S	k5 UR5 UR[UR	55[55 UR[XRR
55S15 g)
Nr^r�r�r��value1r�)r3r5�zing>r^r3r5)rAr�r�r;r�r�r�clearr�s  r�
test_clear�BasicTestCase.test_clearEs���
�^�^�U�E�N�
+������F�F�4�'�'��/��N�	P�"*�h�?��6�
����������1�����R��Z�_�_�.�/�1N�O�
���
�����R�[�[�]�+�S�U�3�����R� 4� 4�5�:�:�<�=��w�Grc�*�URSRUR5SS0S9nUR[	USR55SS15 UR[	USR55S	S15 UR[	US
R55SS15 URUSSS5 URUSS	S
5 URUS
SS5 URUR
5/SQ5 SS0US'UR[	USR55SS15 URUSSS5 URS	US5 URUR
5/SQ5 0US
'UR[	US
R55S15 URSUS
5 URUR
5/SQ5 XRXR'UR[	XRR55[	55 0XR'UR[	XRR55[	55 UR[	USR55S15 UR[	USR55S15 UR[	US
R55[	55 URUR
5/SQ5 USUS'UR[	USR55S15 g)NrR�nameD�valueDr�rS�name1�namedrT�name2rU�name3rZr��value3)rSrTrU�name22�value22)
rGr�r5r�r�rr��assertNotInr;�assertNotEqualr�s  r�test_setitem�BasicTestCase.test_setitemQs��
�_�_��
�F�4�?�?�#�w��.A��C��	
����R�
�^�0�0�2�3�g�w�5G�H�����R�
�^�0�0�2�3�g�w�5G�H�����R�
�^�0�0�2�3�g�w�5G�H�����J���0�(�;�����J���0�(�;�����J���0�(�;��������(L�M�"�I�.��:������R�
�^�0�0�2�3�h��5H�I�����J���1�9�=�����"�Z�.�1��������(L�M���:������R�
�^�0�0�2�3�g�Y�?�����"�Z�.�1��������(L�M�#%�&:�&:�#;���� ����C��#7�#7� 8� =� =� ?�@�#�%�H�#%���� �����R� 4� 4�5�:�:�<�=�s�u�E�����R�
�^�0�0�2�3�g�Y�?�����R�
�^�0�0�2�3�h�Z�@�����R�
�^�0�0�2�3�S�U�;��������(L�M��J���:������R�
�^�0�0�2�3�h�Z�@rc���UR(aURS5 [R"SR	UR
S55nUR
5nUR[R5 URU5 SSS5 URURSS5S5 URUSSS5 g!,(df   NI=f)Nz2if no_value is allowed, ParsingError is not raisedzC            [DEFAULT]
            test {0} test
            invalidr�DEFAULT�test)
r4r=r�r�r�r5rAr�rIr�rDr�r�)r�invalidrFs   r�test_invalid_multiline_value�*BasicTestCase.test_invalid_multiline_valuews�������M�M�N�O��/�/�#��v�d�o�o�a�0�1�
��
�^�^�
��
�
�
�|�8�8�
9��N�N�7�#�:�������	�6�2�F�;�����I��v�.��7�:�
9�s�C�
C'r$N)r%r&r'r(r�r�r�r�r�r�r�r�rrrrr r*r6rBrGrJrOrWr]rkrqr*r$rrrNrNDs���[-�@A*�FJ�X'9�T&0�PL�/�8�1�"<�D�2E�>
2�4?�l+�+�B;�$M�6(�
�
H�$A�L
8rrNc�0�\rSrSr\R
rSrSrg)�StrictTestCasei�Tr$N)	r%r&r'r(rI�RawConfigParserr>r:r*r$rrrtrt�s���/�/�L�
�Frrtc�\�\rSrSr\R
rSrSrSr	Sr
SrSrSr
S	rS
rg)�ConfigParserTestCasei�c��UR5nURnU"URSS5S5 U"URSS5S5 U"URSS5S5 URU[R
SS5nUR[R:XaURURS	5 gg)
Nr�rz%something with interpolation (1 step)�bar9z.something with lots of interpolation (9 steps)�bar10z/something with lots of interpolation (10 steps)�bar11)r{r��5something %(with11)s lots of interpolation (11 steps))	rJr�r�rrI�InterpolationDepthErrorr<rLr�)rrFr�r�s    r�test_interpolation�'ConfigParserTestCase.test_interpolation�s���
�
*�
*�
,��
�
�
��
�2�6�6�%���!H�I�
�2�6�6�%�� �;�	=�
�2�6�6�%��!�<�	>��N�N�2�|�C�C�U�G�T������!4�!4�4����Q�V�V�&I�
J�5rc��UR5nURU[RSS5nUR	UR
S5 UR	URS5 UR	URS5 UR[R:XaUR	URS5 gg)N�Interpolation Errorr��	reference)r�r�z
%(reference)sr�)rJrrI�InterpolationMissingOptionErrorr�r�r�r�r<rLr�rs   r� test_interpolation_missing_value�5ConfigParserTestCase.test_interpolation_missing_value�s���
�
*�
*�
,���N�N�2�|�K�K�0�&�
:��������k�2�������$9�:�������6�*�����!4�!4�4����Q�V�V�&B�
C�5rc�*�UR/SQ5 g)N)�rMrN)�
getdefaultz|<default>|)r�z|value|)r�rd�rOr
s r�
test_items�ConfigParserTestCase.test_items�s�����!4�	5rc� �URSRURSS95nURUR	SS5S5 UR
[R:Xa#URUR	SS5S5 gg)	Nzc[section]
option1{eq}xxx
option2{eq}%(option1)s/xxx
ok{eq}%(option1)s/%%s
not_ok{eq}%(option2)s/%%srr.r��okzxxx/%s�not_okz
xxx/xxx/%s)rGr�r5r�r�r<rIrLr�s  r�test_safe_interpolation�,ConfigParserTestCase.test_safe_interpolation�s���
�_�_�9�:@��$(�O�O�A�$6�:@�:8�	9��	
������	�4�0�(�;�����!4�!4�4����R�V�V�I�x�8�,�G�5rc��URSRURSS95nURUR	SS5S5 UR[URSSS5 UR[URSSS5 UR[URSSS	5 URUR	SS5S5 URSS
S5 URUR	SS
5S5 g)
Nr-rr.r2r3r^z%foozfoo%zf%oor5zfoo%%barzfoo%bar)rGr�r5r�r�r�r�r�r�s  r�#test_set_malformatted_interpolation�8ConfigParserTestCase.test_set_malformatted_interpolation�s���
�_�_�0�06��$�/�/�!�:L��0M�O��	
�������	�2�E�:����*�b�f�f�f�i��H����*�b�f�f�f�i��H����*�b�f�f�f�i��H��������	�2�E�:�	���v�y�*�-��������	�2�I�>rc��URSRURSS95nUR[UR
SSS5 UR[UR
SSS5 UR[UR
SS[
55 UR[UR
SSS5 UR[UR
SSS5 UR[UR
SS[
55 UR[UR
SS	S
5 UR[URS	5 g)Nr-rr.r2r3rg�?r5r�zinvalid opt name!)rGr�r5r��	TypeErrorr��objectr�r�s  r�test_set_nonstring_types�-ConfigParserTestCase.test_set_nonstring_types�s���
�_�_�0�06��$�/�/�!�:L��0M�O��	
���)�R�V�V�V�Y��B����)�R�V�V�V�Y��D����)�R�V�V�V�Y���I����)�R�V�V�V�Y��B����)�R�V�V�V�Y��D����)�R�V�V�V�Y���I����)�R�V�V�V�S�:M�N����)�R�^�^�S�9rc�z�UR5nUR[URUR5 gr	)rAr�r�r�r;r�s  r�test_add_section_default�-ConfigParserTestCase.test_add_section_default�s*��
�^�^�
�����*�b�n�n�d�6J�6J�Krc��URSS0S9nURXRSS5 URXRR	S5S5 URSS0S9nURXRSS	5 URXRR	S5S5 g
)zbpo-23835 fix for ConfigParserrg@r�rzz2.5r�g@r�z5.25N)rAr�r;r�r�r�s  r�test_defaults_keyword�*ConfigParserTestCase.test_defaults_keyword�s���
�^�^�a��X�^�
.������0�0�1�#�6��>����r�"6�"6�7�@�@��E�s�K�
�^�^�c�4�[�^�
1������0�0�1�#�6��?����r�"6�"6�7�@�@��E�t�Lrr$N)r%r&r'r(rI�ConfigParserr>r~r�r�r�r�r�r�r�r*r$rrrwrw�s:���,�,�L�J�	C�5�
H�?� :�L�Mrrwc��\rSrSr\R
rSr\R"S5R5rSrSr
SrSrSrg)	�#ConfigParserTestCaseNoInterpolationi�Nz�
        [numbers]
        one = 1
        two = %(one)s * 2
        three = ${common:one} * 3

        [hexen]
        sixteen = ${numbers:two} * 8
    c���URUSSS5 URUSSS5 URUSSS5 URUSS	S
5 g)N�numbers�onerz�twoz%(one)s * 2�threez${common:one} * 3�hexen�sixteenz${numbers:two} * 8)r�r�s  r�assertMatchesIni�4ConfigParserTestCaseNoInterpolation.assertMatchesIni�sh������I��u�-�s�3�����I��u�-�}�=�����I��w�/�1D�E�����G��Y�/�1E�Frc�\�URUR5nURU5 gr	)rGrr�r�s  r�test_no_interpolation�9ConfigParserTestCaseNoInterpolation.test_no_interpolation�s"��
�_�_�T�X�X�
&�����b�!rc�d�UR5nURURS55 g�N�)rA�assertIsNonerDr�s  r�test_empty_case�3ConfigParserTestCaseNoInterpolation.test_empty_case�s%��
�^�^�
�����"�.�.��,�-rc��"SS[R5nU"5nURUR5 UR	U5 g)Nc��\rSrSrSrSrg)�bConfigParserTestCaseNoInterpolation.test_none_as_default_interpolation.<locals>.CustomConfigParseriNr$)r%r&r'r(�_DEFAULT_INTERPOLATIONr*r$rr�CustomConfigParserr�s��%)�"rr�)rIr�rDrr�)rr�rFs   r�"test_none_as_default_interpolation�FConfigParserTestCaseNoInterpolation.test_none_as_default_interpolations<��	*��!:�!:�	*� �
!��
���t�x�x� ����b�!rr$)r%r&r'r(rIr�r>r<r�r��striprr�r�r�r�r*r$rrr�r��sF���,�,�L��M�
�/�/��	�
����G�"�.�"rr�c��\rSrSrSrSrg)�,ConfigParserTestCaseInvalidInterpolationTypeic��[RSS4HMnURUS9 UR[5 [R
"US9 SSS5 SSS5 MO g!,(df   N=f!,(df   Mr=f)Nrhza string)rd�r<)rI�ExtendedInterpolation�subTestr�r�r�)rrds  r�*test_error_on_wrong_type_for_interpolation�WConfigParserTestCaseInvalidInterpolationType.test_error_on_wrong_type_for_interpolation	sa��"�8�8�2�
�K�E����E��*��&�&�y�1� �-�-�E�B�2�+�*�L�1�1��+�*�s"�A7�A&�A7�&
A4�0A7�7
B	r$N)r%r&r'r(r�r*r$rrr�r�s��Crr�c� �\rSrSrSrSrSrSrg)�)ConfigParserTestCaseNonStandardDelimitersi�z:=�$��//�"r$N�r%r&r'r(r5r6r7r*r$rrr�r�����J�"��)�rr�c��\rSrSrSrSrg)�-ConfigParserTestCaseNonStandardDefaultSectioni�generalr$N)r%r&r'r(r;r*r$rrr�r�s���Orr�c�b�\rSrSr\R
rSRSS5rSr	Sr
SrSrg	)
�MultilineValuesTestCaseizSI'm having spam spam spam spam spam spam spam beaked beans spam spam spam and spam!� �	
c��UR5n[S5HcnSRU5nURU5 [S5H/nUR	USRU5UR
5 M1 Me [
[RSSS9nURU5 SSS5 g!,(df   g=f)N�dz	section{}�
z
lovely_spam{}�wr�r�)
rArr�r�r��wonderful_spamr�r�TESTFNr%)rrFr�s�jr�s      r�setUp�MultilineValuesTestCase.setUp s���
�^�^�
���s��A��"�"�1�%�A��N�N�1���2�Y�����q�/�0�0��3�T�5H�5H�I���
�)�"�"�C�'�
:�a��H�H�Q�K�;�
:�
:�s�B7�7
Cc�L�[R"[R5 gr	)�os�unlinkrr�r
s r�tearDown� MultilineValuesTestCase.tearDown*s��
�	�	�)�"�"�#rc�"�UR5n[[RSS9nUR	U5 SSS5 URUR
SS5URRSS55 g!,(df   NK=f)Nr�r��section8�lovely_spam4r��
)	rAr�rr�r�r�r�r��replace)r�cf_from_filer�s   r� test_dominating_multiline_values�8MultilineValuesTestCase.test_dominating_multiline_values-sr���~�~�'��
�)�"�"�W�
5���"�"�1�%�6�����)�)�*�n�E��,�,�4�4�V�T�B�	D�6�
5�s�B�
Br$N)
r%r&r'r(rIr�r>r�r�r�r�r�r*r$rrr�r�s3���,�,�L�,�-4�W�S�&�-A���$�Drr�c�D�\rSrSr\R
rSrSrSr	Sr
Srg)�RawConfigParserTestCasei7c��UR5nURnU"URSS5S5 U"URSS5S5 U"URSS5S5 U"URSS5S	5 g)
Nr�rz*something %(with1)s interpolation (1 step)ryz3something %(with9)s lots of interpolation (9 steps)rzz5something %(with10)s lots of interpolation (10 steps)r{r|)rJr�r��rrFr�s   rr~�*RawConfigParserTestCase.test_interpolation:s~��
�
*�
*�
,��
�
�
��
�2�6�6�%���7�	9�
�2�6�6�%�� �@�	B�
�2�6�6�%��!�B�	D�
�2�6�6�%��!�B�	Drc�*�UR/SQ5 g)N)r�)r�z
|%(default)s|)r�z
|%(name)s|)r�z	%(value)sr�r
s rr��"RawConfigParserTestCase.test_itemsFs�����!8�	9rc���UR5nURS5 URSSS5 URSS/SQ5 URSSSS05 URUR	SS5S5 URUR	SS5/SQ5 URUR	SS5SS05 URS	5 URS	S
S5 URUR	S	S
5S5 UR
[RLa>SUlURSSS5 URUR	SS5S5 gg)
Nz
non-stringrgrr�)rrr��r��
r=�pign��!	@r�zthis is sickTc��U$r	r$)rs r�<lambda>�BRawConfigParserTestCase.test_set_nonstring_types.<locals>.<lambda>\s��qr)	rAr�r�r�r��_dictrIrJ�optionxformr�s  rr��0RawConfigParserTestCase.test_set_nonstring_typesLs)��
�^�^�
��
���|�$�
���|�U�A�&�
���|�V�%>�?�
���|�V�d�G�_�5��������e�4�a�8��������f�5�2�	4��������f�5��g��G�
���s��
���s�N�D�)��������^�4�d�;�
�8�8�|�1�1�1�)�B�N��F�F�<��A�&����R�V�V�L�!�4�a�8�2rc�6�UR[5nURSS0S9 SSS5 WRnUR	[U5S5 URSS0S9nUR
X0RSS5 g!,(df   Nh=f)	z-bpo-23835 legacy behavior for RawConfigParserrg333333@r�Nz%'int' object has no attribute 'lower'r�g������@r�)r�r�rAr�r�rr�r;)r�ctx�errrFs    rr��-RawConfigParserTestCase.test_defaults_keyword`s���
�
�
�~�
.�#��N�N�Q��H�N�-�/��m�m������S��#J�K�
�^�^�c�3�Z�^�
0�����r�"6�"6�7��<�c�B�/�
.�s�B
�

Br$N)r%r&r'r(rIrur>r~r�r�r�r*r$rrr�r�7s#���/�/�L�
D�9�9�(Crr�c� �\rSrSrSrSrSrSrg)�,RawConfigParserTestCaseNonStandardDelimitersijr�r�r$Nr�r$rrrrjr�rrc�>�\rSrSr\R
rSrSrSr	Sr
Srg)�RawConfigParserTestSambaConfip)r1r0z----)r�Fc���[R"SSS9nUR5nURUS/SS9nUR	X1/5 /SQnUR	UR5U5 UR	UR
SS	5S
5 UR	URSS5S5 UR	UR
SS
5S5 UR	UR
SS5S5 g)Nzcfgparser.2r�r�r;r�r�)�global�homes�printerszprint$z
pdf-generator�tmp�Agustinr�	workgroup�MDKGROUPzmax log size�2zhosts allowz127.r
zecho commandz
cat %s; rm %s)rr�rAr>r�r�r�r�)r�smbconfrFrAr�s     r�test_reading�)RawConfigParserTestSambaConf.test_readingvs����"�"�=��F��
�^�^�
���w�w��);�<�w�w�O������y�1�A����������1��������+�6�
�C�������8�^�<�b�A��������-�8�&�A��������~�6��Hrr$N)r%r&r'r(rIrur>r6r7r8rr*r$rrrrps%���/�/�L�)��%��!��Irrc��\rSrSr\R
r\R"5rSr	Sr
S
SjrSrSr
SrS	rS
rSrSrg)�)ConfigParserTestCaseExtendedInterpolationi��commonTNc�d�URU5nU(aX4lURU5 U$r	)rAr�rD)rrEr3r�rFs     rrG�4ConfigParserTestCaseExtendedInterpolation.fromstring�s)��
�^�^�H�
%���(�N�
���v���	rc��UR[R"S5R55nURnU"USSS5 U"USSS5 U"USSS5 U"USSS5 U"USSS	5 U"USS
S5 U"USSS
5 U"USSS5 U"USSS5 U"USSS5 U"USSS5 U"USSS5 U"USSS5 U"USSS5 U"USSS5 U"USS
S5 U"USSS5 g)Na
            [common]
            favourite Beatle = Paul
            favourite color = green

            [tom]
            favourite band = ${favourite color} day
            favourite pope = John ${favourite Beatle} II
            sequel = ${favourite pope}I

            [ambv]
            favourite Beatle = George
            son of Edward VII = ${favourite Beatle} V
            son of George V = ${son of Edward VII}I

            [stanley]
            favourite Beatle = ${ambv:favourite Beatle}
            favourite pope = ${tom:favourite pope}
            favourite color = black
            favourite state of mind = paranoid
            favourite movie = soylent ${common:favourite color}
            favourite song = ${favourite color} sabbath - ${favourite state of mind}
        rzfavourite Beatle�Paulzfavourite color�green�tomzfavourite bandz	green dayzfavourite popezJohn Paul II�sequelz
John Paul III�ambv�Georgezson of Edward VIIzGeorge Vzson of George Vz	George VI�stanley�blackzfavourite state of mind�paranoidzfavourite moviez
soylent greenzfavourite songzblack sabbath - paranoid)rGr�r�r�r�r�s   r�test_extended_interpolation�EConfigParserTestCaseExtendedInterpolation.test_extended_interpolation�s���
�_�_�X�_�_�.�
�,�U�W�-��0�
�
��
�2�h�<�*�+�V�4�
�2�h�<�)�*�G�4�
�2�e�9�'�(�&�1�
�2�e�9�&�'��1�
�2�e�9�%�&��4�
�2�e�9�%�&��7�
�2�e�9�X���0�
�2�f�:�(�)�8�4�
�2�f�:�'�(�'�2�
�2�f�:�)�*�J�7�
�2�f�:�'�(�+�6�
�2�i�=�+�,�h�7�
�2�i�=�*�+�W�5�
�2�i�=�2�3�Z�@�
�2�i�=�*�+�_�=�
�2�i�=�)�*�N�;�
�2�i�=�)�*�%�	'rc�n�UR[R"S5R55nUR	[
R5 USS SSS5 UR	[
R5 USS SSS5 g!,(df   N?=f!,(df   g=f)Nz�
            [one for you]
            ping = ${one for me:pong}

            [one for me]
            pong = ${one for you:ping}

            [selfish]
            me = ${me}
        zone for you�ping�selfish�me)rGr�r�r�r�rIr}r�s  r�test_endless_loop�;ConfigParserTestCaseExtendedInterpolation.test_endless_loop�s���
�_�_�X�_�_�	.�	
��U�W�	���
�
�|�C�C�
D��}��f�%�E�
�
�
�|�C�C�
D��y�M�$��E�
D�E�
D��
D�
D�s�	B�	B&�
B#�&
B4c���URS5nURUSSS5 URUSSS5 URUSSS5 [RnUR	U5nUSS	 SSS5 URWR
RS
5 URUR
RSS5 g!,(df   N^=f)
Nz�
            [dollars]
            $var = $$value
            $var2 = ${$var}
            ${sick} = cannot interpolate me

            [interpolated]
            $other = ${dollars:$var}
            $trying = ${dollars:${sick}}
        �dollarsz$varz$value�interpolatedz$otherz${sick}zcannot interpolate mez$tryingzdollars:${sickr�z${dollars:${sick}})rGr�rIr�r�r�r�r�)rrF�exception_classr�s    r�test_strange_options�>ConfigParserTestCaseExtendedInterpolation.test_strange_options�s���
�_�_�	�	
��	
����I��v�.��9�����N�+�H�5�x�@�����I��y�1�3J�K�&�F�F��
�
�
��
/�2��~��y�)�0�������/�/�1A�B�������*�*�1�-�/C�D�0�
/�s�;	C�
C*c�:�[R"S5R5nURU5nURnU"USSS5 U"USSS5 U"USSS5 U"USSS	5 U"US
SS5 U"US
S
S5 g)Naj
            [common]
            optionlower = value
            OptionUpper = Value

            [Common]
            optionlower = a better ${common:optionlower}
            OptionUpper = A Better ${common:OptionUpper}

            [random]
            foolower = ${common:optionlower} redefined
            FooUpper = ${Common:OptionUpper} Redefined
        r�optionlowerrd�OptionUpper�Value�Common�a better value�A Better Value�random�foolower�value redefined�FooUpper�A Better Value Redefined)r�r�r�rGr��rrrFr�s    r�test_case_sensitivity_basic�EConfigParserTestCaseExtendedInterpolation.test_case_sensitivity_basic�s����o�o��
��U�W�	��_�_�S�
!��
�
�
��
�2�h�<�
�&��0�
�2�h�<�
�&��0�
�2�h�<�
�&�(8�9�
�2�h�<�
�&�(8�9�
�2�h�<�
�#�%6�7�
�2�h�<�
�#�%?�@rc���[R"S5R5nUR[R
5 UR
U5nSSS5 UR
USS9nURnU"USSS5 U"USSS5 U"US	SS
5 U"US	SS5 U"USS
S5 U"USSS5 g!,(df   N�=f)Na8
            [common]
            option = value
            Option = Value

            [Common]
            option = a better ${common:option}
            Option = A Better ${common:Option}

            [random]
            foo = ${common:option} redefined
            Foo = ${Common:Option} Redefined
        c��U$r	r$)r�s rr��[ConfigParserTestCaseExtendedInterpolation.test_case_sensitivity_conflicts.<locals>.<lambda>s��#r)r�rr�rdr�r2r3r4r5r6r^r8r�r:)r�r�r�r�rIr�rGr�r;s    r�test_case_sensitivity_conflicts�IConfigParserTestCaseExtendedInterpolation.test_case_sensitivity_conflicts�s����o�o��
��U�W�	��
�
�|�@�@�
A�����%�B�B��_�_�S�o�_�
>��
�
�
��
�2�h�<��!�7�+�
�2�h�<��!�7�+�
�2�h�<��!�#3�4�
�2�h�<��!�#3�4�
�2�h�<��� 1�2�
�2�h�<��� :�;�B�
A�s�C�
C$c��URS5nUR[R5 USS SSS5 UR[R5 USS SSS5 UR[R5 USS SSS5 UR[R5 USS SSS5 UR[R5 USS SSS5 UR[
5 SUSS	'SSS5 g!,(df   N�=f!,(df   N�=f!,(df   N�=f!,(df   N�=f!,(df   Ny=f!,(df   g=f)
Na
            [interpolation fail]
            case1 = ${where's the brace
            case2 = ${does_not_exist}
            case3 = ${wrong_section:wrong_value}
            case4 = ${i:like:colon:characters}
            case5 = $100 for Fail No 5!
        zinterpolation fail�case1�case2�case3�case4�case5z
BLACK $ABBATH�case6)rGr�rI�InterpolationSyntaxErrorr�r�r�s  r�test_other_errors�;ConfigParserTestCaseExtendedInterpolation.test_other_errorss2��
�_�_��
���
�
�|�D�D�
E��#�$�W�-�F�
�
�
�|�K�K�
L��#�$�W�-�M�
�
�
�|�K�K�
L��#�$�W�-�M�
�
�
�|�D�D�
E��#�$�W�-�F�
�
�
�|�D�D�
E��#�$�W�-�F�
�
�
�z�
*�0?�B�#�$�W�-�+�
*�F�
E��
L�
L��
L�
L��
E�
E��
E�
E��
*�
*�sG�	D)�!	D:�	E�	E�1	E-�	E>�)
D7�:
E�
E�
E*�-
E;�>
Fr$)NN)r%r&r'r(rIr�r>r�r<r;r:rGr!r'r-r<rArKr*r$rrrr�sL���,�,�L� �6�6�8�M��O�
�F��+'�Z �"E�*A�0<�6@rrc��\rSrSrSrSrg)�ConfigParserTestCaseNoValuei/Tr$N)r%r&r'r(r4r*r$rrrNrN/s���NrrNc�F�\rSrSr\R
"5rSrSrSr	Sr
g)�NoValueAndExtendedInterpolationi3Tc��[R"S5nURU5nURUSSS5 UR	USSS5 g)Nz@
            [dummy]
            a
            b = ${a}
        �dummyr�r�r�)r�r�rGr�r�r�s   r�&test_interpolation_with_allow_no_value�FNoValueAndExtendedInterpolation.test_interpolation_with_allow_no_value7sU�����"�
��
�_�_�V�
$���
�
�b��k�#�&��-�����G��S�)�2�.rc��[R"S5nURU5nURUSSS5 URUSSS5 g)NzG
            [dummy]
            a = None
            b = ${a}
        rRr��Noner�)r�r�rGr�r�s   r�test_explicit_none�2NoValueAndExtendedInterpolation.test_explicit_noneBsW�����"�
��
�_�_�V�
$������G��S�)�6�2�����G��S�)�6�2rr$N)r%r&r'r(rIr�r<r4rSrWr*r$rrrPrP3s�� �6�6�8�M��N�	/�	3rrPc�,�\rSrSr\R
rSrg)�/ConfigParserNoValueAndExtendedInterpolationTestiNr$N)r%r&r'r(rIr�r>r*r$rrrZrZNs�� �,�,�LrrZc�,�\rSrSr\R
rSrg)�2RawConfigParserNoValueAndExtendedInterpolationTestiUr$N)r%r&r'r(rIrur>r*r$rrr\r\Us�� �/�/�Lrr\c�H�\rSrSr\R
rS1rS1rSr	Sr
SrSrg)	�ConfigParserTestCaseTrickyFilei\r.r1Tc	� �[R"SSS9nUR5nUR[	URUSS95S5 URUR
5/SQ5 URURURSS	S
0S9S5 UR[5 URURSS
S	S
0S9 SSS5 UR[	URSS5RS55S5 UR[	URSS5RS55S5 SnURURUS55 URURUS5S5 UR[	URS55S5 UR[ R"5 URS5 SSS5 URURSS5S5 URURSS5URSS55 URURS S5S!5 g!,(df   GN�=f!,(df   N�=f)"Nr�r�r�r�r�r)�strange�
corruption�&yeah, sections can be indented as well�another one!�no values here�tricky interpolation�more interpolation�go�interpolatez-1rt���T)�rawrur`�otherr��rardr�rbzare they subsectionszlets use some Unicodeu	片仮名rcrrdre�letszdo thisrfzgo shopping)rr�rAr�r�r>r�r�r;r�r�r��splitr�r�rrIr�)rr�rF�longnames    r�test_cfgparser_dot_3�3ConfigParserTestCaseTrickyFile.test_cfgparser_dot_3bs���!�!�-��E��
�^�^�
������R�W�W�V�g�W�>�?��C��������)?�	@�	
������4�#7�#7��)6��(=�#�?�@B�	D�
�
�
�z�
*��I�I�d�*�*�D�d�)�4�0�
�
2�+�	
����R�V�V�I�w�7�=�=�d�C�D�a�H�����R�V�V�L�'�:�@�@��F�G��L�;��������x�1G�H�I��������*A�B�K�P�����R�X�X�n�5�6��:�
�
�
�|�K�K�
L��H�H�%�&�M������� 6��?��K������� 6��?���� 6��=�	?������� 4�f�=�}�M�!+�
*��M�
L�s�3I-�I?�-
I<�?
J
c���[R"SSS9nUR5nUR[5 URUSS9 SSS5 g!,(df   g=f)Nr�r�r��asciir�)rr�rAr��UnicodeDecodeErrorr>)rr�rFs   r�test_unicode_failure�3ConfigParserTestCaseTrickyFile.test_unicode_failure�sK���!�!�-��E��
�^�^�
��
�
�
�1�
2��G�G�F�W�G�-�3�
2�
2�s�A�
A#r$N)
r%r&r'r(rIr�r>r5r6r4rprur*r$rrr^r^\s-���,�,�L���J��u���N�N�@.rr^c�.�\rSrSrSrSrSrSrSrSr	g)	�Issue7005TestCasei�zjTest output when None is set() as a value and allow_no_value == False.

http://bugs.python.org/issue7005

z[section]
option = None

c���U"SS9nURS5 URSSS5 [R"5nUR	U5 UR5$�NF)r4r�r�)r�r�r�r�r%r&)rr>�cpr�s    r�prepare�Issue7005TestCase.prepare�sJ��
��
/��
���y�!�
���y�(�D�)��k�k�m��
����
��|�|�~�rc���[R"SS9nURS5 UR[5 URSSS5 SSS5 g!,(df   g=frz)rIr�r�r�r�r�)rr{s  r�test_none_as_value_stringified�0Issue7005TestCase.test_none_as_value_stringified�sH��
�
&�
&�e�
<��
���y�!�
�
�
�y�
)��F�F�9�h��-�*�
)�
)�s�A�
A&c�x�UR[R5nURXR5 gr	)r|rIrur��expected_output)rr's  r�"test_none_as_value_stringified_raw�4Issue7005TestCase.test_none_as_value_stringified_raw�s*�����l�:�:�;������!5�!5�6rr$N)
r%r&r'r(�__doc__r�r|rr�r*r$rrrxrx�s���5�O��.�7rrxc��\rSrSr\rSrSrg)�SortedTestCasei�c��URS5n[R"5nURU5 UR	UR5S5 g)Nz [b]
o4=1
o3=2
o2=3
o1=4
[a]
k=v
z,[a]
k = v

[b]
o1 = 4
o2 = 3
o3 = 2
o4 = 1

)rGr�r�r%r�r&)rrFr's   r�test_sorted�SortedTestCase.test_sorted�sJ��
�_�_�%�&�������
�����������*�&�	'rr$N)r%r&r'r(rr9r�r*r$rrr�r��s���I�'rr�c�:�\rSrSr\R
rSrSrSr	Sr
g)�CompatibleTestCasei�z#;r0c��[R"S5nURU5nURUR	SS5S5 URUR	SS5S5 URUR	SS5S5 g)	Nz�        [Commented Bar]
        baz=qwe ; a comment
        foo: bar # not a comment!
        # but this is a comment
        ; another comment
        quirk: this;is not a comment
        ; a space must precede an inline comment
        rQr^zbar # not a comment!r\r]�quirkzthis;is not a comment)r�r�rGr�r�r�s   r�test_comment_handling�(CompatibleTestCase.test_comment_handling�s|�� ���)�
�
��_�_�]�
+����������7�/�	1���������7��?���������9�0�	2rr$N)r%r&r'r(rIrur>r6r7r�r*r$rrr�r��s���/�/�L���!��2rr�c�6�\rSrSr\R
rSSjrSrg)�CopyTestCasei�Nc�T�URU5nURU5 UR5nURU5 UR5HPnURUR
:XaMX0R
R
5HupgXVU:XdMXV	M MR U$r	)rArDr�rr�r;r)rrEr3rF�cf_copyr�rMrds        rrG�CopyTestCase.fromstring�s���
�^�^�H�
%��
���v���.�.�"�����"���~�~�'�G��|�|�t�3�3�3��"$�%9�%9�":�"@�"@�"B����#�u�,��(�#C�(��rr$r	)	r%r&r'r(rIr�r>rGr*r$rrr�r��s���,�,�L�
rr�c� �\rSrSrSrSrSrg)�FakeFilei�c���[R"SSS9n[USS9nUR5UlURR5 SSS5 g!,(df   g=f)Nr:r�r�r�r�)rr�r��	readlines�lines�reverse)r�	file_pathr�s   r�__init__�FakeFile.__init__�sI���$�$�]�<�H�	�
�)�g�
.�!�����D�J��J�J��� �/�
.�
.�s�0A�
A'c�l�[UR5(aURR5$gr�)r�r��popr
s rr��FakeFile.readline�s#���t�z�z�?�?��:�:�>�>�#�#�r)r�N)r%r&r'r(r�r�r*r$rrr�r��s��!�rr�c#�v# �UR5nU(aUv� UR5nU(aMgg7f)z+As advised in Doc/library/configparser.rst.N)r�)r��lines  r�readline_generatorr��s*����:�:�<�D�
��
��z�z�|���$�s�39�9c�2�\rSrSrSrSrSrSrSrSr	g)	�ReadFileTestCasei�c��[R"SSS9/nURUSRS55 UH{n[
R"5n[USS9nURU5 SSS5 URSU5 URS	US5 URUSS	S
5 M} g![a N�f=f!,(df   Nb=f)Nr:r�r�r�utf8r�r�rRr^r<)rr�rrE�UnicodeEncodeErrorrIr�r�r��assertInr�)r�
file_pathsr�r�r�s     r�	test_file�ReadFileTestCase.test_file�s����&�&�}�\�J�K�
�	����j��m�2�2�6�:�;�$�I�!�.�.�0�F��i�'�2�a�� � ��#�3��M�M�)�V�,��M�M�%��	�!2�3����V�I�.�u�5�x�@�
$��"�	��	��3�2�s�#B=�C
�=
C
�	C
�
C	c�4�[R"S5R5RS5n[R
"5nUR
U5 URSU5 URSUS5 URUSSS5 g)Nz%
        [Foo Bar]
        foo=newbarr�rRr^r<)	r�r�r�rnrIr�r�r�r�)rr�r�s   r�
test_iterable�ReadFileTestCase.test_iterable
s������!���u�w�u�u�T�{�	��*�*�,��������
�
�i��(��
�
�e�V�I�.�/�����	�*�5�1�8�<rc��[R"5nUR[5 UR	[55 SSS5 UR	[
[555 URSU5 URSUS5 URUSSS5 g!,(df   Np=f)z
Issue #11670.NrRr^r<)	rIr�r�r�r�r�r�r�r��rr�s  r�test_readline_generator�(ReadFileTestCase.test_readline_generators����*�*�,��
�
�
�y�
)����X�Z�(�*����+�H�J�7�8��
�
�i��(��
�
�e�V�I�.�/�����	�*�5�1�8�<�*�
)�s�B/�/
B=c��[R"S5R5RS5n[R
"5nUR
[R5nURUSS9 SSS5 UR[WR5S5 [R"S5R5RS5n[R
"5nUR
[R5nURUSS9 SSS5 UR[UR5S5 [R"S	5R5RS5n[R
"5nUR
[R5nURUSS9 SSS5 UR[UR5S
5 [R"S5R5RS5n[R
"5nUR
[R5nURUSS9 SSS5 UR[UR5S5 g!,(df   GN$=f!,(df   GN�=f!,(df   N�=f!,(df   Ni=f)
z
Issue #18260.z"
        [badbad]
        [badbad]r�sbadbadrNzGWhile reading from b'badbad' [line  2]: section 'badbad' already existsz5
        [badbad]
        bad = bad
        bad = badzWWhile reading from b'badbad' [line  3]: option 'bad' in section 'badbad' already existsz
        [badbad]
        = badz=Source contains parsing errors: b'badbad'
	[line  2]: '= bad'z"
        [badbad
        bad = badzDFile contains no section headers.
file: b'badbad', line: 1
'[badbad')r�r�r�rnrIr�r�r�r�r�rr�r�r�r��rr�r��dses    r�test_source_as_bytes�%ReadFileTestCase.test_source_as_bytess;�����!���U�W�U�U�4�[�	��*�*�,��
�
�
�|�A�A�
B�c����U�9��5�C������
�
��
�	
�
���!���e�g�e�e�D�k�	��*�*�,��
�
�
�|�@�@�
A�S����U�9��5�B������
�
��
&�	
�
���!���%�'�%�%��+�	��*�*�,��
�
�
�|�8�8�
9�S����U�9��5�:������
�
��M�	
����!���e�g�e�e�D�k�	��*�*�,��
�
�
�|�E�E�
F�#����U�9��5�G������
�
��
�	
�GC�
B��B�
A��:�
9��G�
F�s0�(J�
J(�2J:�K�
J%�(
J7�:
K�
Kc��/SQn[R"SSSSSS9nUR[R5nUR	U5 SSS5 UR[
WR5S5 g!,(df   N4=f)N)z[SECT]
zKEY1
z
 KEY2 = VAL2
r�TF)r.)r6r4r:r5r<zZKey without value continued with an indented line.
file: '<???>', line: 3
' KEY2 = VAL2\n')rIr�r��MultilineContinuationErrorr�r�rr�r�s    r�-test_keys_without_value_with_extra_whitespace�>ReadFileTestCase.test_keys_without_value_with_extra_whitespaceMs��
��
�*�*������
���
�
�|�F�F�
G�3����U�#�H������
�
��
 �	
�H�
G�s�A<�<
B
r$N)
r%r&r'r(r�r�r�r�r�r*r$rrr�r��s��A�=�=�-
�^
rr�c�<�\rSrSrSrSrSrSrSrSr	Sr
S	rg
)�CoverageOneHundredTestCaseifz"Covers edge cases in the codebase.c��[R"SS5nURURS5 URURS5 URUR
S5 URURS5 URURS5 UR[U5S5 g)Nr�r�)r�r�NNz3Option 'option' in section 'section' already exists)	rIr�r�r�r�r�linenor�r�rr�s  r�test_duplicate_option_error�6CoverageOneHundredTestCase.test_duplicate_option_erroris����1�1�)�X�F��������	�2�������x�0�������t�,�������t�,�������%F�G�����U��&6�	7rc���[R"SSS5nURURS5 URURS5 URUR
S5 g)Nr�r��rawval)r�r�r�)rIr}r�r�r�r�r�s  r�test_interpolation_depth_error�9CoverageOneHundredTestCase.test_interpolation_depth_errorssV���4�4�X�y�5=�?��������%D�E�������x�0�������	�2rc�P�UR[5n[R"5 SSS5 [R"SS9nUR	UR
S5 [R"S5nUR	UR
S5 g!,(df   Nq=f)Nrr)r�r�rIr�r�r)rr�r�s   r�test_parsing_error�-CoverageOneHundredTestCase.test_parsing_errorzst��
�
�
�y�
)�R��%�%�'�*��)�)��:��������x�0��)�)�(�3��������x�0�*�
)�s�B�
B%c���[R"5nURS5 UR[R5nUSS SSS5 UR[
WR5S5 UR[R5nUSS SSS5 UR[
UR5S5 g!,(df   N�=f!,(df   NE=f)Nz�
            [section]
            invalid_percent = %
            invalid_reference = %(()
            invalid_variable = %(does_not_exist)s
        r��invalid_percentz.'%' must be followed by '%' or '(', found: '%'�invalid_referencez+bad interpolation variable reference '%(()')rIr�rDr�rJr�rr��rr�r�s   r�test_interpolation_validation�8CoverageOneHundredTestCase.test_interpolation_validation�s����*�*�,������	
��
�
�|�D�D�
E���9��/�0�F�����R�\�\�*�->�	?�
�
�
�|�D�D�
E���9��1�2�F�����R�\�\�*�-?�	@�
F�
E��F�
E�s�	C�	C#�
C �#
C1c��[R"5nURS5 UR[	US5S5 g)Nz7
            [section]
            key = value
        r�z<Section: section>)rIr�rDr��reprr�s  r�test_sectionproxy_repr�1CoverageOneHundredTestCase.test_sectionproxy_repr�s@���*�*�,������	
�	
����f�Y�/�0�2F�Grc�x�[R"5nSSKnURURS'URS5 UR
SUR5 URURSS5S5 URURSS5S	5 URUSRS5S5 URUSRS5S	5 U?UR[5 URSS5 SSS5 UR
SUR5 URS	URSUR5 UR[5 URSS5 SSS5 UR[5 USRS5 SSS5 UR[5 USRS5 SSS5 g!,(df   N�=f!,(df   N�=f!,(df   Nc=f!,(df   g=f)
Nr�decimalzS
            [s1]
            one = 1
            [s2]
            two = 2
        �s1r�r�s2r�r�)rIr�r��Decimal�
convertersrDr�r��
getdecimalr�r�ri)rr�r�s   r�"test_inconsistent_converters_state�=CoverageOneHundredTestCase.test_inconsistent_converters_state�s����*�*�,���'.������)�$�����	
�	
�
�
�i��!2�!2�3�����*�*�4��7��;�����*�*�4��7��;�������0�0��7��;�������0�0��7��;���
�
�
�~�
.����d�E�*�/��
�
�i��!2�!2�3����i�(�����F�$5�$5�6�
�
�
�~�
.����d�E�*�/�
�
�
�~�
.��4�L�#�#�E�*�/�
�
�
�~�
.��4�L�#�#�E�*�/�
.�/�
.��
/�
.��
.�
.��
.�
.�s0�G8�8H	�(H�H+�8
H�	
H�
H(�+
H9r$N)r%r&r'r(r�r�r�r�r�r�r�r*r$rrr�r�fs%��,�7�3�1�@�"H�+rr�c�Z�\rSrSrSrSrSrSrSrSr	Sr
S	rS
rSr
SrS
rSrg)�ExceptionPicklingTestCasei�zBTests for issue #13760: ConfigParser exceptions are not picklable.c�N�SSKn[R"S5n[URS-5HonURX#5nUR
U5nURURUR5 UR[U5[U55 Mq g)Nrrdr)
�picklerI�Errorr�HIGHEST_PROTOCOL�dumps�loadsr��messager��rr��e1�proto�pickled�e2s      r�
test_error�$ExceptionPicklingTestCase.test_error�s{���
�
�
��
(���6�2�2�Q�6�7�E��l�l�2�-�G����g�&�B����R�Z�Z����4����T�"�X�t�B�x�0�	8rc���SSKn[R"S5n[URS-5H�nURX#5nUR
U5nURURUR5 URURUR5 URURUR5 UR[U5[U55 M� g)Nrr�r)r�rIr�rr�r�r�r�r�r�r�r�r�s      r�test_nosectionerror�-ExceptionPicklingTestCase.test_nosectionerror�s����
�
(�
(��
3���6�2�2�Q�6�7�E��l�l�2�-�G����g�&�B����R�Z�Z����4����R�W�W�b�g�g�.����R�Z�Z����4����T�"�X�t�B�x�0�
8rc�4�SSKn[R"SS5n[URS-5H�nURX#5nUR
U5nURURUR5 URURUR5 URURUR5 URURUR5 UR[U5[U55 M� g)Nrr�r�r)
r�rIr�rr�r�r�r�r�r�r�r�r�r�s      r�test_nooptionerror�,ExceptionPicklingTestCase.test_nooptionerror�s����
�
'�
'��)�
<���6�2�2�Q�6�7�E��l�l�2�-�G����g�&�B����R�Z�Z����4����R�W�W�b�g�g�.����R�Z�Z����4����R�Y�Y��	�	�2����T�"�X�t�B�x�0�8rc��SSKn[R"SSS5n[URS-5GHnURX#5nUR
U5nURURUR5 URURUR5 URURUR5 URURUR5 URURUR5 UR[U5[U55 GM g)Nrr�rr�r)r�rIr�rr�r�r�r�r�r�r�rr�r�r�s      r�test_duplicatesectionerror�4ExceptionPicklingTestCase.test_duplicatesectionerror�s����
�
/�
/�	�8�S�
I���6�2�2�Q�6�7�E��l�l�2�-�G����g�&�B����R�Z�Z����4����R�W�W�b�g�g�.����R�Z�Z����4����R�Y�Y��	�	�2����R�Y�Y��	�	�2����T�"�X�t�B�x�0�8rc���SSKn[R"SSSS5n[URS-5GH.nURX#5nUR
U5nURURUR5 URURUR5 URURUR5 URURUR5 URURUR5 URURUR5 UR[U5[U55 GM1 g)Nrr�r�rr�r)r�rIr�rr�r�r�r�r�r�r�r�rr�r�r�s      r�test_duplicateoptionerror�3ExceptionPicklingTestCase.test_duplicateoptionerror�s����
�
.�
.�y�(�H�����6�2�2�Q�6�7�E��l�l�2�-�G����g�&�B����R�Z�Z����4����R�W�W�b�g�g�.����R�Z�Z����4����R�Y�Y��	�	�2����R�Y�Y��	�	�2����R�Y�Y��	�	�2����T�"�X�t�B�x�0�8rc�6�SSKn[R"SSS5n[URS-5H�nURX#5nUR
U5nURURUR5 URURUR5 URURUR5 URURUR5 UR[U5[U55 M� g�Nrr�r��msgr)
r�rI�InterpolationErrorrr�r�r�r�r�r�r�r�r�r�s      r�test_interpolationerror�1ExceptionPicklingTestCase.test_interpolationerror�s����
�
,�
,�X�y�%�
H���6�2�2�Q�6�7�E��l�l�2�-�G����g�&�B����R�Z�Z����4����R�W�W�b�g�g�.����R�Z�Z����4����R�Y�Y��	�	�2����T�"�X�t�B�x�0�8rc��SSKn[R"SSSS5n[URS-5GHnURX#5nUR
U5nURURUR5 URURUR5 URURUR5 URURUR5 URURUR5 UR[U5[U55 GM g)Nrr�r�r�r�r)r�rIr�rr�r�r�r�r�r�r�r�r�r�r�s      r�$test_interpolationmissingoptionerror�>ExceptionPicklingTestCase.test_interpolationmissingoptionerrors����
�
9�
9�(�I��k�#���6�2�2�Q�6�7�E��l�l�2�-�G����g�&�B����R�Z�Z����4����R�W�W�b�g�g�.����R�Z�Z����4����R�Y�Y��	�	�2����R�\�\�2�<�<�8����T�"�X�t�B�x�0�8rc�6�SSKn[R"SSS5n[URS-5H�nURX#5nUR
U5nURURUR5 URURUR5 URURUR5 URURUR5 UR[U5[U55 M� gr�)
r�rIrJrr�r�r�r�r�r�r�r�r�r�s      r�test_interpolationsyntaxerror�7ExceptionPicklingTestCase.test_interpolationsyntaxerrors����
�
2�
2�8�Y��
N���6�2�2�Q�6�7�E��l�l�2�-�G����g�&�B����R�Z�Z����4����R�W�W�b�g�g�.����R�Z�Z����4����R�Y�Y��	�	�2����T�"�X�t�B�x�0�8rc�6�SSKn[R"SSS5n[URS-5H�nURX#5nUR
U5nURURUR5 URURUR5 URURUR5 URURUR5 UR[U5[U55 M� g)Nrr�r�r�r)
r�rIr}rr�r�r�r�r�r�r�r�r�r�s      r�test_interpolationdeptherror�6ExceptionPicklingTestCase.test_interpolationdeptherrors����
�
1�
1�(�I�����6�2�2�Q�6�7�E��l�l�2�-�G����g�&�B����R�Z�Z����4����R�W�W�b�g�g�.����R�Z�Z����4����R�Y�Y��	�	�2����T�"�X�t�B�x�0�8rc�0�SSKn[R"S5nURSS5 URSS5 URSS5 [	UR
S-5H�nUR
X#5nURU5nURURUR5 URURUR5 URURUR5 URURUR5 UR[U5[U55 M� [R"S	5nURSS5 URSS5 URSS5 [	UR
S-5H�nUR
X#5nURU5nURURUR5 URURUR5 URURUR5 URURUR5 UR[U5[U55 M� g)
Nrrr�line1r��line2r��line3�filename)r�rIr�rrr�r�r�r�r�r�r�errorsr�r�s      r�test_parsingerror�+ExceptionPicklingTestCase.test_parsingerror*s����
�
&�
&�x�
0��
�	�	�!�W��
�	�	�!�W��
�	�	�!�W���6�2�2�Q�6�7�E��l�l�2�-�G����g�&�B����R�Z�Z����4����R�W�W�b�g�g�.����R�Y�Y��	�	�2����R�Y�Y��	�	�2����T�"�X�t�B�x�0�8��
&�
&�z�
2��
�	�	�!�W��
�	�	�!�W��
�	�	�!�W���6�2�2�Q�6�7�E��l�l�2�-�G����g�&�B����R�Z�Z����4����R�W�W�b�g�g�.����R�Y�Y��	�	�2����R�Y�Y��	�	�2����T�"�X�t�B�x�0�8rc��SSKn[R"SSS5n[URS-5GHnURX#5nUR
U5nURURUR5 URURUR5 URURUR5 URURUR5 URURUR5 UR[U5[U55 GM g)Nrrr�r�r)r�rIr�rr�r�r�r�r�r�r�rr�r�r�s      r�test_missingsectionheadererror�8ExceptionPicklingTestCase.test_missingsectionheadererrorEs����
�
3�
3�J��V�
L���6�2�2�Q�6�7�E��l�l�2�-�G����g�&�B����R�Z�Z����4����R�W�W�b�g�g�.����R�W�W�b�g�g�.����R�Y�Y��	�	�2����R�Y�Y��	�	�2����T�"�X�t�B�x�0�8rr$N)r%r&r'r(r�r�r�r�r�r�r�rrrrrr*r$rrr�r��s<��L�1�	1�
1�1�
1�
1�1�
1�1�1�61rr�c��\rSrSrSrSrSrg)�InlineCommentStrippingTestCaseiSzyTests for issue #14590: ConfigParser doesn't strip inline comment when
delimiter occurs earlier without preceding space..c��[R"SS9nURS5 USnURUSS5 URUSS5 URUS	S
5 URUSS5 URUS
S5 URUSS5 URUSS5 USnURUSS5 URUSS5 URUS	S5 g)N)r0r1r�)r7a�
        [section]
        k1 = v1;still v1
        k2 = v2 ;a comment
        k3 = v3 ; also a comment
        k4 = v4;still v4 ;a comment
        k5 = v5;still v5 ; also a comment
        k6 = v6;still v6; and still v6 ;a comment
        k7 = v7;still v7; and still v7 ; also a comment

        [multiprefix]
        k1 = v1;still v1 #a comment ; yeah, pretty much
        k2 = v2 // this already is a comment ; continued
        k3 = v3;#//still v3# and still v3 ; a comment
        r��k1zv1;still v1�k2�v2�k3�v3�k4zv4;still v4�k5zv5;still v5�k6zv6;still v6; and still v6�k7zv7;still v7; and still v7�multiprefixzv3;#//still v3# and still v3)rIr�rDr�)r�cfgr�s   r�test_stripping�-InlineCommentStrippingTestCase.test_strippingWs	���'�'�A�������	
�
�	�N������4��-�0�����4��$�'�����4��$�'�����4��-�0�����4��-�0�����4��"=�>�����4��"=�>��
�������4��-�0�����4��$�'�����4��"@�Arr$N)r%r&r'r(r�r#r*r$rrrrSs
��:�Brrc�6�\rSrSrSrSrSrSrSrSr	Sr
g	)
�ExceptionContextTestCaseiwzJTest that implementation details doesn't leak
through raising exceptions. c�6�[R"5nURS5 UR[R5nU URSS5 SSS5 UR
URRS5 g!,(df   N5=f)Nz�
        [Paths]
        home_dir: /Users
        my_dir: %(home_dir1)s/lumberjack
        my_pictures: %(my_dir)s/Pictures
        �Paths�my_dirT)	rIr�rDr�r�r�r�r��__suppress_context__r�s   r�test_get_basic_interpolation�5ExceptionContextTestCase.test_get_basic_interpolation{sq���*�*�,������	
��
�
�|�K�K�
L��
��J�J�w��)���
�
�b�l�l�7�7��>��R�s�B
�

Bc�Z�[R"[R"5S9nURS5 UR	[R
5nU UR
SS5 SSS5 URURRS5 g!,(df   N5=f)Nr�z�
        [Paths]
        home_dir: /Users
        my_dir: ${home_dir1}/lumberjack
        my_pictures: ${my_dir}/Pictures
        r(r)T)
rIr�r�rDr�r�r�r�r�r*r�s   r�test_get_extended_interpolation�8ExceptionContextTestCase.test_get_extended_interpolation�s���*�*�$�:�:�<�>������	
��
�
�|�K�K�
L��
��J�J�w��)���
�
�b�l�l�7�7��>��R�s�B�
B*c�0�[R"5nURS5 UR[R5nURS5 SSS5 UR
WRRS5 g!,(df   N5=f)Nz2
        [Paths]
        home_dir: /Users
        roT)	rIr�rDr�r�r�r�r�r*r�s   r�test_missing_options�-ExceptionContextTestCase.test_missing_options�sm���*�*�,������	
��
�
�|�:�:�
;�r��N�N�6�"�<��
�
�b�l�l�7�7��>�<�
;�s�B�
Bc��[R"5nUR[R5nUR	SSS5 SSS5 URWRRS5 g!,(df   N5=f)N�Section1�an_int�15T)rIr�r�r�r�r�r�r*�rr�r�s   r�test_missing_section�-ExceptionContextTestCase.test_missing_section�s\���*�*�,��
�
�
�|�:�:�
;�r��J�J�z�8�T�2�<��
�
�b�l�l�7�7��>�<�
;�s�A8�8
Bc��[R"5nUR[R5nUR	SS5 SSS5 URWRRS5 g!,(df   N5=f)Nr4r5T)rIr�r�r�r�r�r�r*r7s   r�test_remove_option�+ExceptionContextTestCase.test_remove_option�s\���*�*�,��
�
�
�|�:�:�
;�r�� � ��X�6�<��
�
�b�l�l�7�7��>�<�
;�s�A7�7
Br$N)r%r&r'r(r�r+r.r1r8r;r*r$rrr&r&ws ��$�?�?�?�?�?rr&c�N^�\rSrSrSr\RrSU4SjjrSr	Sr
U=r$)�ConvertersTestCasei�z Introduced in 3.5, issue #18159.c�B>�[TU]US9nSURS'U$)Nr�c��UR5Vs/sH*nUR5(dMUR5PM, sn$s snfr	)rnr�)�vr�s  rr��.ConvertersTestCase.newconfig.<locals>.<lambda>�s6��A�G�G�I�1?�I�q�45�G�G�I�2;�����I�1?��1?s
�A�Ar�)�superrAr�)rr3r@�	__class__s   �rrA�ConvertersTestCase.newconfig�s,����7�$�h�$�7��'?����F�#��rc�t
�UR5nURSUR5 URSUR5 URURS5 URURS5 URURS5 UR	URS5 UR[
UR5S5 UR[5 SURS'SSS5 UR[5 SURS'SSS5 URS	5 US
nURUSS5 URUSS
5 URUSS5 URUSS5 URUSS5 URURS
S5S5 URURS
S5S
5 URURS
S5S5 URURS
S5S5 URURS
S5S5 URURS
S5S5 URURS
S5S5 URURS
S5S5 URURS
S5/SQ5 URURS
S5S5 URURS5S5 URURS5S5 URURS5S5 URURS5/SQ5 URURS5S5 UR[5 UR!S
S5 SSS5 UR[5 UR!S5 SSS5 SSKnUR$URS'URSUR5 UR	URS5 UR[
UR5S5 UR%S5nURUR!S
S5U5 URUR!S5U5 URS	UR'SUR5 UR[
UR5S5 UR[5 UR!S
S5 SSS5 UR[5 UR!S5 SSS5 UR[(5 URS	SSS5 UR[(5 URS	SSS5 UR[(5 URS	SSS5 g!,(df   GN=f!,(df   GN�=f!,(df   GNa=f!,(df   GND=f!,(df   GN=f!,(df   N�=f!,(df   N�=f!,(df   N�=f!,(df   g=f)Nrlr�rgrjrlc��U$r	r$�rAs rr��4ConvertersTestCase.test_converters.<locals>.<lambda>�s��1rr�c��U$r	r$rHs rr�rI�s��Qrz~
        [s]
        str = string
        int = 1
        float = 0.5
        list = a b c d e f g
        bool = yes
        r�rrErzz0.5z
a b c d e f g�boolrxrg�?)r�r��c�dr�r��gTrr�r)rAr�r�r��assertIsNotNoner�r�r�r�rDr�r�r��getlistr�r�r�r�r�rir�)rr"r�r��dec0_5s     r�test_converters�"ConvertersTestCase.test_converters�s����n�n����
�
�i����0��
�
�f�c�n�n�-����#�.�.��/�0����#�.�.��1�2����#�.�.��3�4����S�^�^�F�3�4�����S�^�^�,�a�0�
�
�
�z�
*�!,�C�N�N�2��+�
�
�
�z�
*�#.�C�N�N�4� �+�����	
�
��H������5��8�,�����5��3�'�����7��U�+�����6��O�4�����6��E�*��������e�,�h�7��������e�,�c�2��������g�.��6��������f�-��?��������f�-�u�5��������e�,�h�7�������C��/��3�������c�7�3�S�9�������S�&�1�4C�	D��������V�4�d�;�������u��x�0�������%��!�,�������G�,�c�2�������6�*�-<�	=�������f�-�t�4�
�
�
�~�
.��N�N�3��(�/�
�
�
�~�
.�
�L�L��!�/��$+�O�O����y�!��
�
�i����0����S�^�^�I�6�7�����S�^�^�,�a�0�����'���������W�5�v�>�������g�.��7��N�N�9�%�����C�N�N�3�����S�^�^�,�a�0�
�
�
�~�
.��N�N�3��(�/�
�
�
�~�
.�
�L�L��!�/�
�
�
�x�
(����y�)�)�
�
�
�x�
(����r�"�)�
�
�
�x�
(����t�$�)�
(�u+�
*��
*�
*��B/�
.��
.�
.��/�
.��
.�
.��
(�
(��
(�
(��
(�
(�sl�;X�)X.�Y�Y�Y$�Y6�/Z�Z�Z)�
X+�.
X=�
Y�
Y!�$
Y3�6
Z�
Z�
Z&�)
Z7r$r	)r%r&r'r(r�rIr�r>rArRr*�
__classcell__�rDs@rr>r>�s"���*��,�,�L��D%�D%rr>c�4�\rSrSrSrSrSrSrSrSr	Sr
g	)
�!BlatantOverrideConvertersTestCasei�zyWhat if somebody overrode a getboolean()? We want to make sure that in
this case the automatic converters do not kick in.z�
        [one]
        one = false
        two = false
        three = long story short

        [two]
        one = false
        two = false
        three = four
    c���[R"S[0S9nURUR5 URU5 UR
URS5 g)Nr�)r�)rIr�r�rDr��	_test_lenrOr��rr"s  r�test_converters_at_init�9BlatantOverrideConvertersTestCase.test_converters_at_initsI���'�'�E�3�<�@��������$����s�����S�^�^�E�2�3rc��"SS[R5nU"5nURUR5 UR	U5 URURS5 URURSS55 URURSS55 URURSS55 URURSS55 URURS'URURSS55 URURSS55 URURSS55 URURSS55 g)Nc�r^�\rSrSrSrSS\RS.U4SjjrSS\RS.SjrSr	U=r
$)	�OBlatantOverrideConvertersTestCase.test_inheritance.<locals>.StrangeConfigParseriz0a historic borough in south central PennsylvaniaFN�rjrursc�.>�X:Xag[TU]XX4US9$)NTr`)rCr�)rr�r�rjrursrDs      �rr��ZBlatantOverrideConvertersTestCase.test_inheritance.<locals>.StrangeConfigParser.getbooleans*����$���w�)�'�s�3;�*�=�=rc	�.�URX[X4US9$)Nr`)�	_get_convr�)rr�r�rjrurss      r�getlen�VBlatantOverrideConvertersTestCase.test_inheritance.<locals>.StrangeConfigParser.getlens!���~�~�g�s��/7�&�9�9rr$)r%r&r'r(�
gettysburgrIrLr�rer*rTrUs@r�StrangeConfigParserr_s:���K�J�9>�T�!-�!4�!4�
=�
=�6;�� ,� 3� 3�
9�
9rrhr�r�r�rl)rIr�rDr�rYr�r�r�r�r��_convert_to_boolean)rrhr"s   r�test_inheritance�2BlatantOverrideConvertersTestCase.test_inheritances)��	9�,�";�";�	9�"�#��������$����s�����#�.�.��/�0�������u�e�4�5�������u�e�4�5��������u�5�6��������u�5�6�$'�$;�$;����y�!��������u�5�6��������u�5�6��������u�5�6��������u�5�6rc�^�UR[UR5S5 URSUR5 URSUR5 UR	SUR5 URURS5 URURS5 URURS5 URUR
SS5S5 URUR
SS	5S5 URUR
SS
5S5 URUR
S	S5S5 URUR
S	S	5S5 URUR
S	S
5S5 URUR
S	SS
S9S
5 UR[R5 UR
S	S5 SSS5 URUSR
S5S5 URUSR
S	5S5 URUSR
S
5S5 URUS	R
S5S5 URUS	R
S	5S5 URUS	R
S
5S5 URUS	R
SS
5S
5 URUS	R
S5S5 g!,(df   GN1=f)Nrlrlr��tysburgrgrjr�rr�r���fourrrr)
r�r�r�r�rir�rer�rIr�rZs  rrY�+BlatantOverrideConvertersTestCase._test_len2s�������S�^�^�,�a�0��
�
�i����0��
�
�e�S�^�^�,�����C�N�N�3����#�.�.��/�0����#�.�.��1�2����#�.�.��3�4�������E�5�1�1�5�������E�5�1�1�5�������E�7�3�R�8�������E�5�1�1�5�������E�5�1�1�5�������E�7�3�Q�7�������E�6�A��>��B�
�
�
�|�9�9�
:��J�J�u�f�%�;�����U��*�*�5�1�1�5�����U��*�*�5�1�1�5�����U��*�*�7�3�R�8�����U��*�*�5�1�1�5�����U��*�*�5�1�1�5�����U��*�*�7�3�Q�7�����U��*�*�6�1�5�q�9�����U��*�*�6�2�D�9�;�
:�s� L�
L,c� ^�[R"5mSTlU4SjTlTR	UR
5 UR
[TR5S5 URSTR5 URSTR5 URTRS5 URTRS5 URTRS5 URTRSS55 URTRS	S	55 URTRSS	55 URTRS	S55 TRTRS'URTRSS55 URTRS	S	55 URTRSS	55 URTRS	S55 UR
TRSS5S
5 UR
TRSS	5S
5 UR
TRSS5S5 UR
TRS	S5S
5 UR
TRS	S	5S
5 UR
TRS	S5S
5 UR[ 5 UR
TSRS5S
5 SSS5 UR[ 5 UR
TS	RS5S
5 SSS5 g!,(df   NQ=f!,(df   g=f)Nc��g)NTr$)r�r�s  rr��LBlatantOverrideConvertersTestCase.test_instance_assignment.<locals>.<lambda>Ns��rc�&>�[TUU5$r	)r�)r�r�r"s  �rr�rsOs���S��W��f�1E�-Frr�rlr�rgrjr�r�rr�rnrl)rIr�r�rerDr�r�r�r�r�rir�r�rir�r�r�rZs @r�test_instance_assignment�:BlatantOverrideConvertersTestCase.test_instance_assignmentLs�����'�'�)��5���F��
�������$�����S�^�^�,�a�0��
�
�i����0��������/����#�.�.��/�0����#�.�.��1�2����#�.�.��3�4�������u�e�4�5�������u�e�4�5�������u�e�4�5�������u�e�4�5�$'�$;�$;����y�!��������u�5�6��������u�5�6��������u�5�6��������u�5�6�������E�5�1�1�5�������E�5�1�1�5�������E�7�3�R�8�������E�5�1�1�5�������E�5�1�1�5�������E�7�3�Q�7��
�
�~�
.����S��Z�.�.�u�5�q�9�/�
�
�
�~�
.����S��Z�.�.�u�5�q�9�/�
.�/�
.��
.�
.�s�>%M.�%M?�.
M<�?
N
r$N)r%r&r'r(r�r�r[rjrYrur*r$rrrWrW�s"��:�
�F�4�7�::�4:rrWc�,�\rSrSrSrSrSrSrSrg)�SectionlessTestCaseinc�P�[R"SS9nURU5 U$)NT��allow_unnamed_section)rIr�rD)rrEr"s   rrG�SectionlessTestCase.fromstringps#���'�'�d�C��������
rc���URS5nUR[[RS/5[UR555 URSU[RS5 URSU[RS5 URSUSS5 [R"5nURU5 URUR55nURSU[RS5 URSU[RS5 URSUSS5 g)	NzC
        a = 1
        b = 2
        [sect1]
        c = 3
        �sect1rzr�r|r��3rL)
rGr�r�rI�UNNAMED_SECTIONr�r�r�r%r&�r�cfg1r'�cfg2s    r�test_no_first_section�)SectionlessTestCase.test_no_first_sectionus"����� �
��	
����l�:�:�G�D�E�s�4�=�=�?�G[�\�����d�<�#?�#?�@��E�F�����d�<�#?�#?�@��E�F�����d�7�m�C�0�1�������
�
�6�����v���0�1��	
����d�<�#?�#?�@��E�F�����d�<�#?�#?�@��E�F�����d�7�m�C�0�1rc��URS5nUR[R/UR	55 URSU[RS5 URSU[RS5 [
R"5nURU5 URUR55nUR[R/UR	55 URSU[RS5 URSU[RS5 g)Nz%
        a = 1
        b = 2
        rzr�r|r�)	rGr�rIr�r�r�r�r%r&r�s    r�test_no_section�#SectionlessTestCase.test_no_section�s����� �
��
	
���,�6�6�7�����I�����d�<�#?�#?�@��E�F�����d�<�#?�#?�@��E�F�������
�
�6�����v���0�1�����,�6�6�7�����I�����d�<�#?�#?�@��E�F�����d�<�#?�#?�@��E�Frc�f�[R"SS9nURS5 URS5 UR[R/UR55 URSU[RS5 URSU[RS5 g)	NTrzza = 1zb = 2rzr�r|r�)rIr�rDr�r�r�rZs  r�test_multiple_configs�)SectionlessTestCase.test_multiple_configs�s����'�'�d�C������ ����� ����,�6�6�7�����H�����c�,�">�">�?��D�E�����c�,�">�">�?��D�Err$N)	r%r&r'r(rGr�r�r�r*r$rrrxrxns���
2�,G�$Frrxc��\rSrSrSrSrg)�MiscTestCasei�c�:�[R"U[S1S9 g)Nr�)�not_exported)r�check__all__rIr
s r�test__all__�MiscTestCase.test__all__�s�����T�<�w�i�Hrr$N)r%r&r'r(r�r*r$rrr�r��s��Irr��__main__)0�collectionsrIr�r�r��unittestror�test.supportr�UserDictrr,rN�TestCasertrwr�r�r�r�r�r�rrrrNrPrZr\r^rxr�r�r�r�r�r�r�r�rr&r>rWrxr�r%�mainr$rr�<module>r�s�����	�	����"���%�%��.��B@
8�*�@
8�F�]�H�$5�$5��
VM�=�(�*;�*;�VM�r!"�-��9J�9J�!"�FC�8�3D�3D�C�*�0D�*� �4H� �D�m�X�->�->�D�:0C�m�X�->�->�0C�f*�3J�*�I�#9�8�;L�;L�I�(h@�
�x�?P�?P�h@�V�"6��3�&<�3�6-�#����-�0�#����0�*.�%;�X�=N�=N�*.�Z7��)�)�7�:'�,�'�.2�/��1B�1B�2�,�=�(�"3�"3��&
�
��f
�x�(�(�f
�VO+��!2�!2�O+�dX1�� 1� 1�X1�v!B�X�%6�%6�!B�H3?�x�0�0�3?�lO%���(9�(9�O%�dl:��(9�(9�l:�^6F�(�+�+�6F�rI�8�$�$�I�
�z���M�M�O�r

Youez - 2016 - github.com/yon3zu
LinuXploit