403Webshell
Server IP : 121.121.20.254  /  Your IP : 216.73.216.202
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_csv.cpython-313.pyc
�

��i����SSKrSSKrSSKrSSKJr SSKJr SSKrSSKrSSK	r	SSK
Jr SSKJ
r
Jr SSKJr SSKJr SSKJr "S	S
5r"SS\R,5r"S
S\R,5r"SS\R,5r"SS\5r"SS\R65r"SS\5r"SS\5r"SS\R65r"SS\5r "SS\R,5r!"SS \R,5r""S!S"\R,5r#"S#S$\R,5r$"S%S&5r%\RL"\'"\S'5S(5"S)S*\R,55r("S+S,\R,5r)"S-S.\R,5r*"S/S0\R,5r+\,S1:Xa\RZ"5 gg)2�N)�StringIO)�
TemporaryFile)�support)�
import_helper�check_disallow_instantiation)�permutations)�dedent)�OrderedDictc��\rSrSrSrSrg)�BadIterable�c��[e�N��OSError��selfs �"C:\Python313\\Lib\test\test_csv.py�__iter__�BadIterable.__iter__s���
��N)�__name__�
__module__�__qualname__�__firstlineno__r�__static_attributes__rrrrrs��rrc��\rSrSrSrSrSrSrSrSr	Sr
S	rS
rSr
SrS
rSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSr Sr!S r"S!r#S"r$S#r%S$r&S%r'S&r(S'r)S(r*S)r+S*r,g+),�Test_Csv�z�
Test the underlying C csv parser in ways that are not appropriate
from the high level interface. Further tests of this nature are done
in TestDialectRegistry.
c��U"U5 UR[U5 UR[US5 UR[XSS9 UR[XSS9 UR[XSS9 UR[XSS9 UR[XSS9 UR[XSS9 UR[XSS9 UR[RXS5 UR[XSS9 UR[XS	S9 UR[XS	S9 UR[XS	S9 UR[XSS
9 UR[XS	S
9 UR[XSS9 UR[X[RSS9 UR[X[RSS9 UR[X[R
SS9 UR[XS
S9 UR[XS
S9 UR[XS
S9 UR[XSS9 UR[XSS9 UR[XSS9 U"USS9 U"USS9 U"USS9 U"USSS9 U"USSS9 U"USSS9 U"USSS9 UR[XSSS9 UR[XSSS9 U"USS9 U"USS9 U"USS9 UR[XSSS9 UR[XSSS9 UR[XSSS9 U"USS9 U"USS9 U"USS9 U"USS
9 UR[XSSS9 UR[XSSS9 UR[XSSS9 g)Nr)�bad_attr���	delimiter��
escapechar��	quotecharz^^�foo���lineterminator��quoting)r/r)�
�
� �	T�r%�skipinitialspace)r'r5)r)r5�^)r%r')r%r))r'r)�…)r%r-)r'r-)r)r-)�assertRaises�	TypeError�csv�Error�	QUOTE_ALL�
QUOTE_NONE�
ValueError)r�ctor�args   r�_test_arg_valid�Test_Csv._test_arg_valids����S�	����)�T�*����)�T�4�0����)�T���;����)�T�"��=����)�T�2��>����)�T�"��=����)�T�$��?����)�T�4��@����)�T�$��?����#�)�)�T��6����)�T�$��?����)�T�!��<����)�T�1��=����)�T�!��<����)�T�t��D����)�T�q��A����)�T���=����)�T�"%�-�-�2�	�	?����)�T�"%�-�-�4�	�	A����)�T�"%�.�.�B�	�	@����*�d�4��@����*�d�D��A����*�d�4��@����*�d�4��@����*�d�D��A����*�d�4��@��S�C� ��S�S�!��S�C� ��S�D�4�8��S�T�D�9��S�D�4�8��S�C�$�7����*�d�%(�4�	�	A����*�d�$'�$�	�	@��S�C� ��S�S�!��S�C� ����*�d�3�3��O����*�d�3�#��N����*�d�C�3��O��S�F�#��S�V�$��S�F�#��S��(����*�d�$*�6�	�	C����*�d�%+�F�	�	D����*�d�$*�6�	�	Crc��UR[R/5 UR[[R[55 gr)rAr:�readerr8rrrs r�test_reader_arg_valid�Test_Csv.test_reader_arg_validYs.�����S�Z�Z��,����'�3�:�:�{�}�=rc��UR[R[55 "SS5nUR	[
[RU"55 g)Nc�$�\rSrSr\S5rSrg)�1Test_Csv.test_writer_arg_valid.<locals>.BadWriter�_c��[errrs r�write�7Test_Csv.test_writer_arg_valid.<locals>.BadWriter.write`s���
rrN)rrrr�propertyrLrrrr�	BadWriterrI_s��
�
��
rrO)rAr:�writerrr8r)rrOs  r�test_writer_arg_valid�Test_Csv.test_writer_arg_valid]s<�����S�Z�Z���4�	�	�	
���'�3�:�:�y�{�;rc��U"U6nURURRS5 URURRS5 URURR
S5 URURRS5 URURRS5 URURR[R5 URURRS5 URURRS5 UR[[URS5 UR[[ URSS5 UR[[URS5 UR[[ URSS5 g)	N�,T�
�"Fr%�:r/)�assertEqual�dialectr%�assertIs�doublequoter'r-r)r/r:�
QUOTE_MINIMALr5�strictr8�AttributeError�delattr�setattr)rr?�args�objs    r�_test_default_attrs�Test_Csv._test_default_attrsesB���D�k��������.�.��4��
�
�c�k�k�-�-�t�4�������/�/��6�������3�3�V�<�������.�.��4�������,�,�c�.?�.?�@��
�
�c�k�k�2�2�E�:��
�
�c�k�k�(�(�%�0����.�'�3�;�;��L����.�'�3�;�;��S�Q����.�'�3�;�;�	�J����.�'�3�;�;�#�T�	+rc�D�UR[R/5 gr)rcr:rDrs r�test_reader_attrs�Test_Csv.test_reader_attrsw���� � ����R�0rc�T�UR[R[55 gr)rcr:rPrrs r�test_writer_attrs�Test_Csv.test_writer_attrsz���� � ����X�Z�8rc���[SSSSS[RSSS9nU"U0UD6nURURR
S5 UR
URRS5 URURRS5 URURRS5 URURRS5 URURR[R5 UR
URRS5 UR
URRS5 g)NrWF�\r1�*T)r%r[r'r-r)r/r5r])�dictr:r=rXrYr%rZr[r'r-r)r/r5r])rr?ra�kwargsrbs     r�_test_kw_attrs�Test_Csv._test_kw_attrs}s�����4�%)�S�!�n�n�t�!�#���D�#�F�#��������.�.��4��
�
�c�k�k�-�-�u�5�������/�/��6�������3�3�T�:�������.�.��4�������,�,�c�n�n�=��
�
�c�k�k�2�2�D�9��
�
�c�k�k�(�(�$�/rc�D�UR[R/5 gr)rrr:rDrs r�test_reader_kw_attrs�Test_Csv.test_reader_kw_attrs�s�����C�J�J��+rc�T�UR[R[55 gr)rrr:rPrrs r�test_writer_kw_attrs�Test_Csv.test_writer_kw_attrs�s�����C�J�J��
�3rc��"SS5nX#4-nU"U6nURURRS5 URURRS5 URURR
S5 URURRS5 URURRS5 URURR[R5 URURRS5 URURRS5 g)	Nc�H�\rSrSrSrSrSrSrSr\	RrSrSr
Srg	)
�-Test_Csv._test_dialect_attrs.<locals>.dialect��-Fr6�$�#TrN)rrrrr%r[r'r-r)r:r<r/r5r]rrrrrYr|�s/���I��K��J��N��I��M�M�G�!���FrrYr~Fr6rr�T)
rXrYr%rZr[r'r-r)r/r:r<r5r])rr?rarYrbs     r�_test_dialect_attrs�Test_Csv._test_dialect_attrs�s���	�	��j� ���D�k��������.�.��4��
�
�c�k�k�-�-�u�5�������/�/��5�������3�3�S�9�������.�.��4�������,�,�c�m�m�<��
�
�c�k�k�2�2�D�9��
�
�c�k�k�(�(�%�0rc�D�UR[R/5 gr)r�r:rDrs r�test_reader_dialect_attrs�"Test_Csv.test_reader_dialect_attrs�rhrc�T�UR[R[55 gr)r�r:rPrrs r�test_writer_dialect_attrs�"Test_Csv.test_writer_dialect_attrs�rlrc�,�[SSSS9n[R"U40UD6nURU5 UR	S5 URUR
5X%RR-5 SSS5 g!,(df   g=f�N�w+�utf-8r#��encoding�newliner)	rr:rP�writerow�seekrX�readrYr-)r�fields�expectrq�fileobjrPs      r�_write_test�Test_Csv._write_test�sm��
�4�'�2�
>�'��Z�Z��2�6�2�F��O�O�F�#��L�L��O����W�\�\�^�#�n�n�&C�&C�C�
E�	?�
>�
>�s�A0B�
Bc�V�[SSSS9n[R"U40UD6nURU5 UR	U5 SSS5 URS5 UR
UR5S5 SSS5 g!,(df   NH=f!,(df   g=fr�)rr:rPr8r�r�rXr�)r�excr�rqr�rPs      r�_write_error_test�Test_Csv._write_error_test�s{��
�4�'�2�
>�'��Z�Z��2�6�2�F��"�"�3�'�����'�(��L�L��O����W�\�\�^�R�0�?�
>�'�'��?�
>�s"�)B�B	�9B�	
B	�B�
B(c��UR[RS5 UR[[	55 "SS5nUR[U"55 "SS5nUR[U"5/5 g)Nc� �\rSrSrSrSrSrg)�.Test_Csv.test_write_arg_valid.<locals>.BadList��c��g)N�
rrs r�__len__�6Test_Csv.test_write_arg_valid.<locals>.BadList.__len__�s��rc��US:�a[eg)N�r)r�is  r�__getitem__�:Test_Csv.test_write_arg_valid.<locals>.BadList.__getitem__�s���q�5�!�M�rrN)rrrrr�r�rrrr�BadListr��s��
�
"rr�c��\rSrSrSrSrg)�.Test_Csv.test_write_arg_valid.<locals>.BadItem��c��[errrs r�__str__�6Test_Csv.test_write_arg_valid.<locals>.BadItem.__str__�����
rrN)rrrrr�rrrr�BadItemr�����
rr�)r�r:r;rr)rr�r�s   r�test_write_arg_valid�Test_Csv.test_write_arg_valid�sf�����s�y�y�$�/����w��
�6�	"�	"�	
���w��	�2�	�	�	
���w����4rc�B�SS-nURX/U<SU<35 g)N�X�P�rT)r�)r�	bigstrings  r�test_write_bigfield�Test_Csv.test_write_bigfield�s(���%�K�	����)�.�#�Y�10�	1rc��UR/SQS5 UR[R/SQ[RS9 UR/SQS[R
S9 UR/SQS[RS9 UR/SQS[RS9 URSS/S[RS9 UR/S	QS
[RS9 UR/S	QS[RS9 g)N��ar+zp,q�	a,1,"p,q"r.z"a",1,"p,q"z
"a","1","p,q"�a
br+z	"a
b","1")r�r#Nr+z	"a","",,1z"a","",,"1")
r�r�r:r;r=r\�QUOTE_NONNUMERICr<�
QUOTE_STRINGS�
QUOTE_NOTNULLrs r�test_write_quoting�Test_Csv.test_write_quoting�s��������4����s�y�y�-�),���	�	9������#&�#4�#4�	�	6�����
�#&�#7�#7�	�	9������#&�=�=�	�	2����&���\�#&�=�=�	�	2�����+�#&�#4�#4�	�	6�����-�#&�#4�#4�	�	6rc�~�UR/SQSSS9 UR[R/SQSSS9 UR/SQSSSS9 URS	/S
S[RS9 URS	/SS[RSS
9 URS	/SS[R
S9 UR/SQSS[R
S9 URSS/SS[R
S9 URSS/SS[RS9 URSS/SS[RS9 URSS/SS[RS9 URSS/SS[R
S9 URSS/SS[RS9 UR/SQSS[RS9 g)Nr�r�rnr&)r�r+zp,"q"F)r'r[z
a,1,"p,\"q\""rV�"""")r'r/z\")r'r/r[za,1,p\,qr�z\\,az"\\","a"z\ z\\ ,az\,z\\\,,az,\z",\\",a)zC\�6�7zX"z
C\\,6,7,"X""")r�r�r:r;r\r=r<rs r�test_write_escape�Test_Csv.test_write_escape�s��������$(�	�	*����s�y�y�/�*.�E�	�	C�����*;�$(��	�	?����#���$(�C�4E�4E�	�	G����#���$(�C�4E�4E�',�	�	.�	
���#���$(�C�N�N�	�	D������$(�C�N�N�	�	D����$���h�$(�#�.�.�	�	B����$���h�$(�#�2C�2C�	�	E����$���l�$(�#�-�-�	�	A����%���y�$(�#�2C�2C�	�	E����%���{�$(�#�.�.�	�	B����%���{�$(�#�2C�2C�	�	E����0�2C�$(�#�2C�2C�	�	Erc��SH�nURUS9 [5n[R"X!S9nUR	SS/5 UR	SS/5 UR	SS/5 URUR
5S	US
USU35 SSS5 SSS5 M� g!,(df   N=f!,(df   M�=f)N)rUr0r1z!@#�r,r��br+r�r1r0�a,bz1,2z"
","
")�subTestrr:rPr�rX�getvalue)rr-�siorPs    r�test_write_lineterminator�"Test_Csv.test_write_lineterminators���=�N����^��<��Z�3� �Z�Z��K�F��O�O�S�#�J�/��O�O�Q��F�+��O�O�T�4�L�1��$�$�S�\�\�^�'*�>�*:�'*�>�*:�'0��0@�&B�C� �=�<�>��Z��=�<�s#�B=�A7B,�B=�,
B:�6B=�=
C	c��UR[/SQ5S5 UR[/SQ5S5 UR[/5S5 UR[S/5S5 UR[R[S/5[R
S9 UR[SS/5S5 g)	Nr�r�)r�r+Nza,1,r#�""r.rT)r��iterr�r:r;r=rs r�test_write_iterable�Test_Csv.test_write_iterables�������o�.��<�����n�-�v�6�����b��2�&�����t�f��t�,����s�y�y�$��v�,�����O�����t�T�l�+�S�1rc���"SS5n[R"U"55nUR[URS//5 [SSSS9n[R"U5nUR[URS5 UR	SS/S	S
//5 URS5 URUR5S5 SSS5 g!,(df   g=f)
Nc��\rSrSrSrSrg)�+Test_Csv.test_writerows.<locals>.BrokenFileic��[err)r�bufs  rrL�1Test_Csv.test_writerows.<locals>.BrokenFile.writer�rrN)rrrrrLrrrr�
BrokenFiler�r�rr�r�r�r�r#r�r��c�drz
a,b
c,d
)
r:rPr8r�	writerowsrr9r�rXr�)rr�rPr�s    r�test_writerows�Test_Csv.test_writerowss���	�	����J�L�)�����'�6�#3�#3�s�e�W�=�
�4�'�2�
>�'��Z�Z��(�F����i��)9�)9�4�@����s�C�j�3��*�5�6��L�L��O����W�\�\�^�-=�>�?�
>�
>�s
�BC�
C+c��[SSSS9n[R"U5nURSS/SS//5 UR	S5 URUR
5S5 SSS5 [SSSS9n[R"U5nURS/S//5 UR	S5 URUR
5S	5 SSS5 [SSSS9n[R"U5nURS/S//5 UR	S5 URUR
5S
5 SSS5 g!,(df   N�=f!,(df   N�=f!,(df   g=f)Nr�r�r#r�r�r�rza,
,d
z""
a
za
""
)rr:rPr�r�rXr��rr�rPs   r�test_writerows_with_none�!Test_Csv.test_writerows_with_none(s1��
�4�'�2�
>�'��Z�Z��(�F����s�D�k�D�#�;�7�8��L�L��O����W�\�\�^�^�<�	?��4�'�2�
>�'��Z�Z��(�F����t�f�s�e�_�-��L�L��O����W�\�\�^�]�;�	?��4�'�2�
>�'��Z�Z��(�F����s�e�d�V�_�-��L�L��O����W�\�\�^�]�;�	?�
>�?�
>��?�
>��?�
>�s&�AE�>AE%�.AE6�
E"�%
E3�6
Fc��URSS5 URS/S5 UR[RS/[RS9 URS/S[R
S9 URS/S[RS9 URS/S5 UR[RS/[RS9 UR[RS/[R
S9 UR[RS/[RS9 URSS/S5 URSS/S5 g)Nrr#r�r.rT)r�r�r:r;r=r�r�rs r�test_write_empty_fields� Test_Csv.test_write_empty_fields<s������R� ����"��t�$����s�y�y�2�$�����G����"��t�S�->�->��?����"��t�S�->�->��?����$���&����s�y�y�4�&�#�.�.��I����s�y�y�4�&�#�:K�:K��L����s�y�y�4�&�#�:K�:K��L����"�b��3�'����$���s�+rc	�b�URS/SSSS9 URS/SSSS9 URS/SSSS9 URS/SSSS9 URSS/SSSS9 URSS/SSSS9 URSS/SSSS9 URSS/SSSS9 URSS/SSS[RS9 UR[RSS/SS[RS9 [R
[R4H-nURSS/SSSUS9 URSS/SSSUS9 M/ [R[R
[R4H;nURSS/SSSUS9 UR[RSS/SSUS9 M= g)	Nr#r�r2Fr4Tz"" "")r%r5r/)r�r:r=r�r;r�r�)rr/s  r�'test_write_empty_fields_space_delimiter�0Test_Csv.test_write_empty_fields_space_delimiterIs������"��t�s�U��K����"��t�s�T��J����$����u��M����$����t��L����"�b��3�#���N����"�b��7�c�D��Q����$���s�c�E��R����$���w�#�PT��U����"�b��3�#��!$���	�	1����s�y�y�2�r�(�),�t�'*�~�~�	�	7��(�(�#�*;�*;�;�G����b�"�X�w�#�PU�%,�
�
.����b�"�X�w�#�PT�%,�
�
.�<��~�~�s�'8�'8�#�:K�:K�K�G����d�D�\�3�#�PU�%,�
�
.��"�"�3�9�9�t�T�l�-0�4�+2�
#�
4�Lrc��[SSSS9n[R"U5nUR[UR
S5 UR[UR
[55 SSS5 g!,(df   g=f)Nr�r�r#r�)rr:rPr8r9r�rrr�s   r�test_writerows_errors�Test_Csv.test_writerows_errorsfs\��
�4�'�2�
>�'��Z�Z��(�F����i��)9�)9�4�@����g�v�'7�'7���G�?�
>�
>���A!A6�6
Bc�j�[R"U40UD6n[U5nURXR5 gr)r:rD�listrX)r�inputr�rqrD�results      r�
_read_test�Test_Csv._read_testls,�����E�,�V�,���f�������(rc�*�UR//5 URS///5 UR[RURS/SSS9 URS/S//SS9 UR[RURS/S5 g)	Nr#z"ab"cr+�r]�abcr)r[sabc�r�r8r:r;rs r�test_read_oddinputs�Test_Csv.test_read_oddinputsqs�������B�������r�d�#����#�)�)�T�_�_�"�)�T�A�	�	7�����	�U�G�9�A��>����#�)�)�T�_�_�!�(�D�	*rc���URSS/SS/SS//5 URSS/SS/SS//5 URS	S
/SS/SS//5 URSS/SS/SS//5 S
nUR[RU5 [	[R
"S/55 SSS5 UR[RU5 [	[R
"S/55 SSS5 UR[RU5 [	[R
"S/55 SSS5 g!,(df   N�=f!,(df   Ni=f!,(df   g=f)Nr�zc,dr�r�r�r�za,b
zc,d
za,b
zc,d
za,b
zc,d
zwith newline=''za,b
c,dza,b
c,dza,b
c,d)r��assertRaisesRegexr:r;�nextrD)r�errmsgs  r�
test_read_eol�Test_Csv.test_read_eol{s$��������#�c��S��I�(>�?�����'�*�c�#�Y��S�	�,B�C�����I�.�#�c��S��I�0F�G�����'�*�c�#�Y��S�	�,B�C�"��
�
#�
#�C�I�I�v�
6�����Z�L�)�*�7�
�
#�
#�C�I�I�v�
6�����Z�L�)�*�7�
�
#�
#�C�I�I�v�
6�����\�N�+�,�7�
6�	7�
6��
6�
6��
6�
6�s$�!E�!E�!E)�
E�
E&�)
E7c	��URS/SS//5 URS/S//5 URS/S//SS9 UR[RURS//SS	9 UR[RURS//SS	9 UR[RURS//SSS
9 g)Nza,"r�r#z"ar6r0r&Tr�)r'r]r�rs r�
test_read_eof�Test_Csv.test_read_eof�s��������3��)��-������#���(��������x�C��8����#�)�)�T�_�_�u�g�r�$��O����#�)�)�T�_�_�t�f�b���N����#�)�)�T�_�_��%���D�	�	Brc���URS/S//5 URS//SQ/5 URS//SQ/5 URS//SQ/SS9 URS	//SQ/5 g)
Nr��a,b,c)r�zbr�za,b,c)r�zbr�za,b\,crnr&za,"b",c�r�rs r�
test_read_nul�Test_Csv.test_read_nul�sj�������$���)������&7�%8�9������&7�%8�9�����
�(9�':�t��L�����
�(9�':�;rc��URS//SQ/5 URS//SQ/SS9 URS//SQ/SS9 g)Nza,b,c�r�r�r�za;b;c�;r$zabcr�r
rs r�test_read_delimiter�Test_Csv.test_read_delimiter�sC������	�O�#4�5�����	�O�#4���D������o�%6�$��Grc��URS//SQ/SS9 URS/SS//SS9 URS/SS//SS9 URS	/SS//SS9 URS
/SS//SS9 URS/SS
//SS9 URS//SQ/SS9 URS//SQ/SS9 URS//SQ/SS9 URS//SQ/5 g)Nza,\b,crrnr&za,b\,cr�zb,cza,"b\,c"za,"b,\c"z	a,"b,c\""zb,c"za,"b,c"\zb,c\za,^b,cr6r	r�)r�z\br�r
rs r�test_read_escape�Test_Csv.test_read_escape�s��������o�%6�4��H������s�E�l�^���E�����
��e��~�$��G�����
��e��~�$��G������#�v���D��I�����
��g��'7�D��I�����
�_�$5�#��F������o�%6�4��H������&7�%8�T��J������&7�%8�9rc�H�URS//SQ/5 URS//SQ/SSS9 URS//SQ/[RSS9 URS//SQ/[RS	9 URS//S
Q/[RS	9 URS//SQ/[R
S	9 URS//S
Q/5 URS//S
Q/[RS	9 URS//SQ/[RS	9 URS//SQ/[R
S	9 URS/SS//5 UR
[URS///[RS	9 UR
[URS///[R
S	9 URS//SQ/SS9 URS//SQ/SS9 URS//SQ/[RSS9 URS//SQ/[R
SS9 g)Nz	1,",3,",5)�1z,3,�5)rrV�3rVrrn)r)r'�r/r'z
,3,"5",7.3, 9)r#�r�333333@�	r.)Nrrz7.3z 9)Nrrrrz,,"",)r#r#r#r#)NNr#Nz"a
b", 7r�z 7zabc,3z	1,@,3,@,5�@r(z	1,,3,,5r�z1\.5,\.5,.5)��?��?rz1\.5,\.5,"\.5")rrz.5)r�r:r=r�r�r�r8r>rs r�test_read_quoting�Test_Csv.test_read_quoting�sE������
�(9�':�;�����
�(A�'B�"&�4�	�	9�����
�(A�'B� #���4�	�	A�	
����)�,@�+A� #� 4� 4�	�	6�����)�,I�+J� #� 1� 1�	�	3�����)�,B�+C� #� 1� 1�	�	3�	
����	�$4�#5�6�����	�$4�#5� #� 4� 4�	�	6�����	�$:�#;� #� 1� 1�	�	3�����	�$:�#;� #� 1� 1�	�	3�	
����
����'7�8����*�d�o�o�"�)�b�T�"%�"6�"6�	�	8�	
���*�d�o�o�"�)�b�T�"%�"3�"3�	�	5�	
����
�(9�':�c��J������*;�)<���M�����)�O�+<� #� 4� 4��	�	G����,�-�0@�/A� #� 1� 1�d�	�	Drc���URS//SQ/SS9 URS//SQ/SS9 URS//SQ/S[RS9 URS//SQ/S[RS9 g)	Nzno space, space,  spaces,	tab)zno space�space�spacesz	tabT�r5z , , �r#r#r#)NNN)r5r/)r�r:r�r�rs r�test_read_skipinitialspace�#Test_Csv.test_read_skipinitialspace�s������9�:�A�B�)-�	�	/�	
����	�%��)-�	�	/�	
����	�+�,�)-�s�7H�7H�	�	J�	
����	�+�,�)-�s�7H�7H�	�	Jrc�z�UR/SQ/SQ/SQ/SQ//SSS9 UR/SQSS	/SS
/S
///SSS9 g)N)za   bz  a  z  r#)r�r#r#r�)r#r#r�r#r#r&r2Fr4r�r�r#Tr
rs r�test_read_space_delimiter�"Test_Csv.test_read_space_delimiter�sZ�����4�+�-B�L�RT�U�"%��	�	?�	
���4��s��c�2�Y���b�9�"%��	�	>rc��[R"5nSnSU-nU<SU<3nURU/X3//5 [R"U5 URU/X3//5 UR[R"5U5 [R"US-
5 UR	[R
URU//5 UR	[[RS5 UR	[[RSS5 [R"U5 g![R"U5 f=f)Nr�r�rTr+)r:�field_size_limitr�rXr8r;r9)r�limit�sizer��biglines     r�test_read_bigfield�Test_Csv.test_read_bigfield�s���$�$�&��
	(��D��d�
�I�!*�I�6�G��O�O�W�I��(>�'?�@�� � ��&��O�O�W�I��(>�'?�@����S�1�1�3�T�:�� � ��a��(����c�i�i����7�)�R�H����i��)=�)=�t�D����i��)=�)=�q�$�G�� � ��'��C� � ��'�s�DD4�4Ec���[R"/SQ5nURURS5 [	U5 URURS5 [	U5 URURS5 [	U5 URURS5 UR[[U5 URURS5 g)N)zline,1zline,2zline,3rr+r�r)r:rDrX�line_numrr8�
StopIteration)r�rs  r�test_read_linenum�Test_Csv.test_read_linenum�s����J�J�5�6��������Q�'��Q��������Q�'��Q��������Q�'��Q��������Q�'����-��q�1�������Q�'rc	��/SQ/SQ/SQ/SQ/SQ/SQ/nSH�nURUS9 [S	S
SS9n[R"X2S9nUR	U5 URS
5 [
[R"U55HupVURXaU5 M SSS5 SSS5 M� g!,(df   N=f!,(df   M�=f)N�z
azb
czd
�z
ezf
gzh
�z
izj
kzl
�z

mzn

ozp

�z

qzr

szt

�z

uzv

wzx

�rUr0r1r,r�r�r#r�r)	r�rr:rPr�r��	enumeraterDrX�r�rowsr-r�rPr��rows       r�test_roundtrip_quoteed_newlines�(Test_Csv.test_roundtrip_quoteed_newliness���"�"�(�(�(�(�

��1�N����^��<�"�4�'�2�F�'� �Z�Z��O�F��$�$�T�*��L�L��O�"+�C�J�J�w�,?�"@����(�(��1�g�6�#A�	G�=�<�1�F�F��=�<�s#�C�A3B=�(C�=
C�C�
C	c��/SQ/SQ/SQ/SQ/SQ/SQ/nSH�nURUS9 [S	S
SS9n[R"X2[RS
S9nURU5 UR
S5 [[R"U[RS
S95HupVURXaU5 M SSS5 SSS5 M� g!,(df   N=f!,(df   M�=f)Nr:r;r<r=r>r?r@r,r�r�r#r�rn)r-r/r'rr)
r�rr:rPr=r�r�rArDrXrBs       r�(test_roundtrip_escaped_unquoted_newlines�1Test_Csv.test_roundtrip_escaped_unquoted_newliness���"�"�(�(�(�(�

��1�N����^��<�"�4�'�2�F�'� �Z�Z��03���4�Q�F��$�$�T�*��L�L��O�"+�C�J�J�w�?B�~�~�BF�-H�#I����(�(��1�g�6�#I�G�=�<�1�F�F��=�<�s#�C,�BC�C,�
C)�%C,�,
C;	rN)-rrrr�__doc__rArErQrcrfrjrrrurxr�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�rrrrrr r'r*r1r7rErHrrrrrrs����
9C�v>�<�+�$1�9�0� ,�4�1�,1�9�E�1�5�1�6�"E�>C�2�?�<�(,�4�:H�)�
*�-�B�<�H�

:�"D�HJ�>�(�&
(�7�$7rrc�P�\rSrSrSrSrSrSrSrSr	Sr
S	rS
rSr
Srg
)�TestDialectRegistryi+c��UR[[RS5 UR[[R5 UR[R
[RS5 UR[R
[RS5 UR[[R5 UR[R
[RS5 UR[R
[RS5 UR[[RS5 UR[[RSS5 UR[[RSSS5 UR[[RSSS9 UR[[RSSS9 UR[[R/5 g)N�nonesuchr)�badargumentr.)r8r9r:�
list_dialects�get_dialectr;�unregister_dialect�register_dialectrs r�test_registry_badargs�)TestDialectRegistry.test_registry_badargs,sZ�����)�S�%6�%6��=����)�S�_�_�5����#�)�)�S�_�_�d�;����#�)�)�S�_�_�j�A����)�S�%;�%;�<����#�)�)�S�%;�%;�T�B����#�)�)�S�%;�%;�Z�H����)�S�%9�%9�4�@����)�S�%9�%9�4��F����)�S�%9�%9�:�q�!�L����)�S�%9�%9�:�&*�	�	,����)�S�%9�%9�:�"&�	�	(����)�S�%9�%9�2�>rc��"SS[R5nSn[R"5U/-nUR5 [R"X!5 UR[RU5 UR[R"U5RS5 [[R"55nURX45 g)Nc��\rSrSrSrSrg)�5TestDialectRegistry.test_registry.<locals>.myexceltsvi>r3rN�rrrrr%rrrr�
myexceltsvrX>����IrrZr3)r:�excelrP�sortrS�
addCleanuprRrXrQr%�sorted)rrZ�name�expected_dialects�got_dialectss     r�
test_registry�!TestDialectRegistry.test_registry=s���	����	����-�-�/�4�&�8����� ����T�.�����.�.��5��������.�8�8�$�?��c�/�/�1�2�����*�9rc	�:�Sn[R"USS9 UR[RU5 UR	[R
"U5RS5 UR	/SQ/[[R"S/U555 g)N�fedcbarr$)r��Y�ZzX;Y;Z)	r:rSr^rRrXrQr%r�rD)rr`s  r�test_register_kwargs�(TestDialectRegistry.test_register_kwargsIso�������T�S�1�����.�.��5��������.�8�8�#�>����/�*�D����W�I�t�1L�,M�Nrc�b�"SS[R5nSn[R"X!SSSSS[RS	9 UR	[R
U5 [R"U5nURURS5 URURS5 URURS5 URURS5 URURS5 URUR[R5 g)
Nc�@�\rSrSrSrSrSrSrSr\	RrSrg)	�DTestDialectRegistry.test_register_kwargs_override.<locals>.mydialectiQr3rVTFrUrN)
rrrrr%r)r[r5r-r:r\r/rrrr�	mydialectrmQs'���I��I��K�$��#�N��'�'�Grrn�test_dialectr�'FTr0)r%r)r[r5r-r/)r:�DialectrSr<r^rRrQrXr%r)r[r5r-r/)rrnr`rYs    r�test_register_kwargs_override�1TestDialectRegistry.test_register_kwargs_overridePs���	(����	(������T�'*�'*�).�.2�,0�%(�]�]�
	4�	
����.�.��5��/�/�$�'������*�*�C�0�����*�*�C�0�����,�,�e�4�����1�1�4�8�����/�/��6�������#�-�-�8rc�v�"SS[R5nUR[RU5 g)Nc��\rSrSrSrSrg)�?TestDialectRegistry.test_incomplete_dialect.<locals>.myexceltsvimr3rNrYrrrrZrvmr[rrZ)r:rqr8r;)rrZs  r�test_incomplete_dialect�+TestDialectRegistry.test_incomplete_dialectls&��	����	����#�)�)�Z�0rc�h�"SS[R5n[SSS9nURS5 UR	S5 [R
"X!"5S9nUR
[U5/S	Q5 UR
[U5S
S/5 SSS5 g!,(df   g=f)Nc�4�\rSrSrSr\RrSrSr	g)�5TestDialectRegistry.test_space_dialect.<locals>.spaceirr2rnrN)
rrrrr%r:r=r/r'rrrrr#r{rs���I��n�n�G��Jrr#r�r��r�zabc   def
c1ccccc1 benzene
r�rY)r�r#r#�def�c1ccccc1�benzene)r:r\rrLr�rDrXr)rr#r�rDs    r�test_space_dialect�&TestDialectRegistry.test_space_dialectqs���	�C�I�I�	�
�4�'�
2�g��M�M�9�:��L�L��O��Z�Z����9�F����T�&�\�+A�B����T�&�\�J�	�+B�C�3�
2�
2�s�A6B#�#
B1c�
�[SSSS9n[R"U/UQ70UD6nUR/SQ5 UR	S5 URUR
5U5 SSS5 g!,(df   g=f)Nr�r#r��r�r��r+r�rr)rr:rPr�r�rXr�)r�expected�	writeargs�kwwriteargsr�rPs      r�compare_dialect_123�'TestDialectRegistry.compare_dialect_123~sa��
�4��g�
>�'��Z�Z��C�)�C�{�C�F��O�O�G�$��L�L��O����W�\�\�^�X�6�?�
>�
>�s�AA4�4
Bc��"SS[R5n"SS[R5n"SS[R5n"SS[R5n"S	S
5n[R"SU5 URS5 URSSS9 URSUS9 URS
U5 URSU"5S9 URSSS9 URSUSS9 URSUS9 [R"S5 g![R"S5 f=f)Nc��\rSrSrSrSrg)�5TestDialectRegistry.test_dialect_apply.<locals>.testAi�r3rNrYrrr�testAr��r[rr�c��\rSrSrSrSrg)�5TestDialectRegistry.test_dialect_apply.<locals>.testBi�rWrNrYrrr�testBr������Irr�c��\rSrSrSrSrg)�5TestDialectRegistry.test_dialect_apply.<locals>.testCi��|rNrYrrr�testCr��r�rr�c��\rSrSrSrSrg)�7TestDialectRegistry.test_dialect_apply.<locals>.testUnii�uΛrNrYrrr�testUnir��s�� �Irr�c��\rSrSrSrg)�;TestDialectRegistry.test_dialect_apply.<locals>.unspecifiedi�rN�rrrrrrrr�unspecifiedr��s��rr�z1,2,3
r}z1	2	3
z1:2:3
z1|2|3
z1;2;3
r)rYr%u	1Λ2Λ3
)r:r\rSr�rR)rr�r�r�r�r�s      r�test_dialect_apply�&TestDialectRegistry.test_dialect_apply�s!��	�C�I�I�	�	�C�I�I�	�	�C�I�I�	�	!�c�i�i�	!�	�	�	���W�e�,�
	,��$�$�[�1��$�$�[�$�$�?��$�$�[�+�$�F��$�$�]�E�:��$�$�[�%�'�$�B��$�$�[�'�$�B��$�$�[�%�/2�
%�
4��$�$�%:�-4�
%�
6�
�"�"�7�+��C�"�"�7�+�s
�B	D'�'D?c��[R"5H>n[R"U5nUR[[
R
U5 M@ gr)r:rPrQr8r9�copy)rr`rYs   r�	test_copy�TestDialectRegistry.test_copy�s9���%�%�'�D��o�o�d�+�G����i����G�<�(rc��[R"5Han[R"U5n[[R
S-5H(nUR
[[RX#5 M* Mc g)Nr+)	r:rPrQ�range�pickle�HIGHEST_PROTOCOLr8r9�dumps)rr`rY�protos    r�test_pickle�TestDialectRegistry.test_pickle�sS���%�%�'�D��o�o�d�+�G��v�6�6��:�;���!�!�)�V�\�\�7�J�<�(rrN)rrrrrTrcrirrrwr�r�r�r�r�rrrrrLrL+s7��?�"
:�O�9�81�
D�7�,�<=�
KrrLc� �\rSrSrSrSrSrg)�TestCsvBasei�c��[SSSS9nURU5 URS5 [R"X0R
S9n[
U5nURXR5 SSS5 g!,(df   g=f)Nr�r�r#r�rr})rrLr�r:rDrYr�rX)rr��expected_resultr�rDr�s      r�readerAssertEqual�TestCsvBase.readerAssertEqual�s\��
�4�'�2�
>�'��M�M�%� ��L�L��O��Z�Z��<�<�@�F��&�\�F����V�5�?�
>�
>�s�AA2�2
Bc��[SSSS9n[R"X0RS9nUR	U5 URS5 UR
UR5U5 SSS5 g!,(df   g=f)Nr�r�r#r�r}r)rr:rPrYr�r�rXr�)rr�r�r�rPs     r�writerAssertEqual�TestCsvBase.writerAssertEqual�s]��
�4�'�2�
>�'��Z�Z��<�<�@�F����U�#��L�L��O����W�\�\�^�_�=�	?�
>�
>�r�rN)rrrrr�r�rrrrr�r��s��6�>rr�c��\rSrSrSrSrSrSrSrSr	Sr
S	rS
rSr
SrS
rSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrg)�TestDialectExceli�r\c�,�URSS//5 g)Nr��r�rs r�test_single�TestDialectExcel.test_single�������u��w�i�0rc�.�URS/SQ/5 g)Nz	1,2,3,4,5)r�2r�4rr�rs r�test_simple�TestDialectExcel.test_simple�s�����{�-B�,C�Drc�(�URS/5 g�Nr#r�rs r�test_blankline�TestDialectExcel.test_blankline�������r�2�&rc�.�URSSS//5 g)NrTr#r�rs r�test_empty_fields�"TestDialectExcel.test_empty_fields�s�����s�b�"�X�J�/rc�,�URSS//5 g)Nr�r#r�rs r�test_singlequoted�"TestDialectExcel.test_singlequoted�s�����t�r�d�V�,rc�.�URSSS//5 g)Nz"",r#r�rs r�test_singlequoted_left_empty�-TestDialectExcel.test_singlequoted_left_empty�������u��2�w�i�0rc�.�URSSS//5 g)Nz,""r#r�rs r�test_singlequoted_right_empty�.TestDialectExcel.test_singlequoted_right_empty�r�rc�,�URSS//5 g)Nr�rVr�rs r�test_single_quoted_quote�)TestDialectExcel.test_single_quoted_quote�s�����v���w�/rc�,�URSS//5 g)Nz""""""r�r�rs r�test_quoted_quotes�#TestDialectExcel.test_quoted_quotes�s�����x�4�&��2rc�,�URSS//5 g)Nza""br�rs r�test_inline_quote�"TestDialectExcel.test_inline_quote�������v���z�2rc�,�URSS//5 g)Nza"b"cr�rs r�test_inline_quotes�#TestDialectExcel.test_inline_quotes�s�����w�'���4rc�,�URSS//5 g)Nz"a"b�abr�rs r�test_quotes_and_more�%TestDialectExcel.test_quotes_and_more�s��	
���v���x�0rc�,�URSS//5 g)Nza"br�rs r�test_lone_quote� TestDialectExcel.test_lone_quote�r�rc�,�URSS//5 g)Nz"a" "b"za "b"r�rs r�test_quote_and_quote�%TestDialectExcel.test_quote_and_quote�s��	
���y�G�9�+�6rc�,�URSS//5 g)Nz "a"r�rs r�test_space_and_quote�%TestDialectExcel.test_space_and_quote�r�rc�.�URS/SQ/5 g)Nz#1,2,3,"I think, therefore I am",5,6)rr�rzI think, therefore I amrr�r�rs r�test_quoted�TestDialectExcel.test_quoted�s�����D�!+� ,�	-rc�.�URS/SQ/5 g)NzJ1,2,3,"""I see,"" said the blind man","as he picked up his hammer and saw")rr�rz"I see," said the blind manz"as he picked up his hammer and sawr�rs r�test_quoted_quote�"TestDialectExcel.test_quoted_quote�s �����k�!G� H�	Irc�8�SnURU/SQ/SQ/5 g)NzR1,2,3,"""I see,""
said the blind man","as he picked up his
hammer and saw"
9,8,7,6)rr�rz"I see,"
said the blind manz"as he picked up his
hammer and saw)�9�8r�r�r�)rr�s  r�test_quoted_nl�TestDialectExcel.test_quoted_nls+����
	
���u�!J�!2� 3�	4rc�.�URS/SQ/5 g)Nz	12,12,1",)�12r�z1"r#r�rs r�test_dubious_quote�#TestDialectExcel.test_dubious_quotes�����{�-C�,D�Erc�(�UR/S5 gr��r�rs r�	test_null�TestDialectExcel.test_nullr�rc�,�URS//S5 g)Nr�zabc
r�rs r�test_single_writer�#TestDialectExcel.test_single_writers�������y�)�4rc�.�UR/SQ/S5 g)N)r+r�r�r�z
1,2,abc,3,4
r�rs r�test_simple_writer�#TestDialectExcel.test_simple_writers����� 3�4�6G�Hrc�.�UR/SQ/S5 g)N)r+r�za"bc"rrz1,2,"a""bc""",3,4
r�rs r�test_quotes�TestDialectExcel.test_quotes������ 5�6�8O�Prc�,�URS//S5 g�N�abc,defz"abc,def"
r�rs r�test_quote_fieldsep�$TestDialectExcel.test_quote_fieldsep��������}�o�>rc�.�UR/SQ/S5 g)N)r+r�za
bcrrz1,2,"a
bc",3,4
r�rs r�
test_newlines�TestDialectExcel.test_newliness����� 5�6�8M�NrrN)rrrrrYr�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�rrrrrrrrrr�r��s����G�1�E�'�0�-�1�1�0�3�3�5�1�
1�7�
3�-�I�
4�F�'�5�I�Q�?�Orr�c�0�\rSrSr\R
rSrSrg)�EscapedExceli!rnrN)	rrrrr:r=r/r'rrrrrr!s���n�n�G��Jrrc�.�\rSrSr\"5rSrSrSrg)�TestEscapedExceli%c�,�URS//S5 g)Nr
�
abc\,def
r�rs r�test_escape_fieldsep�%TestEscapedExcel.test_escape_fieldsep(rrc�,�URSS//5 g)Nrr
r�rs r�test_read_escape_fieldsep�*TestEscapedExcel.test_read_escape_fieldsep+s������)��
�>rrN)	rrrrrrYrrrrrrrr%s���n�G�?�?rrc�$�\rSrSrSrSrSrSrg)�TestDialectUnixi.�unixc�.�UR/SQ/S5 g)N)r+�abc defr��"1","abc def","abc"
r�rs rr�"TestDialectUnix.test_simple_writer1r
rc�.�URS/SQ/5 g)Nr$)rr#r�r�rs r�test_simple_reader�"TestDialectUnix.test_simple_reader4s�����6�9P�8Q�RrrN)rrrrrYrr'rrrrr r .s���G�Q�Srr c�0�\rSrSr\R
rSrSrg)�QuotedEscapedExceli7rnrN)	rrrrr:r�r/r'rrrrr*r*7s���"�"�G��Jrr*c�.�\rSrSr\"5rSrSrSrg)�TestQuotedEscapedExceli;c�,�URS//S5 grr�rs r�test_write_escape_fieldsep�1TestQuotedEscapedExcel.test_write_escape_fieldsep>rrc�,�URSS//5 g)Nz"abc\,def"
r
r�rs rr�0TestQuotedEscapedExcel.test_read_escape_fieldsepAs�����0�I�;�-�@rrN)	rrrrr*rYr.rrrrrr,r,;s�� �"�G�?�Arr,c��\rSrSrSrSrSrSrSrSr	Sr
S	rS
rSr
SrS
rSrSrSrSrSrSrSrSrSrSrSrSrSrg)�TestDictFieldsiDc��[SSSS9n[R"U/SQS9nUR5nUR	US5 SSS5 g!,(df   g=f)Nr�r�r#r���f1�f2�f3��
fieldnamesr�)rr:�
DictWriter�writeheaderrX)rr�rP�writeheader_return_values    r�test_writeheader_return_value�,TestDictFields.test_writeheader_return_valueGsM��
�4�'�2�
>�'��^�^�G�:L�M�F�'-�'9�'9�';�$����5�r�:�?�
>�
>�s�:A�
Ac��[SSSS9n[R"U/SQS9nUR5 UR	S5 URUR
5S5 URS	S
S.5 UR	S5 UR
5 URUR5S5 SSS5 g!,(df   g=f)
Nr�r�r#r�r5r9r�
f1,f2,f3
r�r�)r6r8z	10,,abc
)	rr:r;r<r�rX�readliner�r�r�s   r�test_write_simple_dict�%TestDictFields.test_write_simple_dictMs���
�4�'�2�
>�'��^�^�G�:L�M�F���� ��L�L��O����W�-�-�/��@��O�O�2�U�3�4��L�L��O��������W�\�\�^�]�;�?�
>�
>�s�B.C�
Cc��[5n[R"U/SQS9nUR5 UR	UR5S5 UR
SSSS.SSS	S./5 UR	UR5S
5 g)Nr5r9rAr+r��fr���xyzzf1,f2,f3
1,abc,f
2,5,xyz
)rr:r;r<rXr�r�r�s   r�test_write_multiple_dict_rows�,TestDictFields.test_write_multiple_dict_rowsXs����*������4F�G����������)�)�+�^�<�����%�s�;�!"�!�5�9�;�	<�����)�)�+�=�	?rc�b�[5nUR[[RU5 gr)rr8r9r:r;�rr�s  r�test_write_no_fields�#TestDictFields.test_write_no_fieldsbs���*�����)�S�^�^�W�=rc��[SSSS9n[R"U/SQS9nUR[5nURSSS	S
.5 SSS5 [
WR5nURSU5 URSU5 URS
U5 URSU5 SSS5 g!,(df   Nt=f!,(df   g=f)Nr�r�r#r�r5r9r��spamr�)�f4r7r+r:z'f4'z'f2'r)
rr:r;r8r>r��str�	exception�assertIn�assertNotIn)rr�rP�cxrSs     r�#test_write_fields_not_in_fieldnames�2TestDictFields.test_write_fields_not_in_fieldnamesfs���
�4�'�2�
>�'��^�^�G�:L�M�F��"�"�:�.�"����r��E� B�C�/��B�L�L�)�I��M�M�,�	�2��M�M�&�)�,����V�Y�/��M�M�#�y�)�?�
>�/�.��?�
>�s#�-C�B=�A%C�=
C	�C�
Cc�f�[5nUR[[RUSS/SS9 g)Nr6r7�raised��extrasaction)rr8r>r:r;rLs  r�&test_typo_in_extrasaction_raises_error�5TestDictFields.test_typo_in_extrasaction_raises_errorrs/���*�����*�c�n�n�g��d�|�'/�	�	1rc�B�[5n[R"USS/SS9nSSSSS	.nUR[[RR
X#5 [R"USS/S
S9nUR[[RR
X#5 g)Nr6r7�raiser[rr+r�r��f0r6r7r8�RAISE)rr:r;r8r>r��rr�rP�dictrows    r�)test_write_field_not_in_field_names_raise�8TestDictFields.test_write_field_not_in_field_names_raisews}���*������$���G�L���!�1�A�6�����*�c�n�n�&=�&=�v�O�����$���G�L�����*�c�n�n�&=�&=�v�Orc�B�[5n[R"USS/SS9nSSSSS	.n[RRX#5 UR	UR5S
5 [R"USS/SS9n[RRX#5 g)Nr6r7�ignorer[rr+r�rraz1,2
�IGNORE)rr:r;r�rXr�rds    r�*test_write_field_not_in_field_names_ignore�9TestDictFields.test_write_field_not_in_field_names_ignore�s����*������$���H�M���!�1�A�6��������0�����)�)�+�Y�7�����$���H�M��������0rc��/SQn[5n[R"U[U55nUR	UR
U5 g�Nr)rr:�
DictReaderr�rXr:�rr:rFrDs    r�(test_dict_reader_fieldnames_accepts_iter�7TestDictFields.test_dict_reader_fieldnames_accepts_iter��9��$�
��J������4�
�#3�4������*�*�J�7rc��/SQn[5n[R"X!5nURURU5 grn)rr:rorXr:rps    r�(test_dict_reader_fieldnames_accepts_list�7TestDictFields.test_dict_reader_fieldnames_accepts_list��2��$�
��J������.������*�*�J�7rc��/SQn[5n[R"U[U55nUR	UR
U5 grn)rr:r;r�rXr:�rr:rFrPs    r�(test_dict_writer_fieldnames_rejects_iter�7TestDictFields.test_dict_writer_fieldnames_rejects_iter�rsrc��/SQn[5n[R"X!5nURURU5 grn)rr:r;rXr:rys    r�(test_dict_writer_fieldnames_accepts_list�7TestDictFields.test_dict_writer_fieldnames_accepts_list�rwrc�B�[5n[R"USS9ng)Nr9)rr:ro)rrFrDs   r�'test_dict_reader_fieldnames_is_optional�6TestDictFields.test_dict_reader_fieldnames_is_optional�s���J������d�3�rc��[SSS9nURS5 URS5 [R"U/SQS9nUR[
U5SS	S
S.5 SSS5 g!,(df   g=f)Nr�r�r|z	1,2,abc
rr5r9rr�r��rrLr�r:rorXr�rr�rDs   r�test_read_dict_fields�$TestDictFields.test_read_dict_fields�s`��
�4�'�
2�g��M�M�-�(��L�L��O��^�^�G�/A�C�F����T�&�\�#�S��+N�O�3�
2�
2�s�AA-�-
A;c�6�[SSS9nURS5 URS5 [R"U5nUR[
U5SSSS	.5 URUR/S	Q5 SSS5 g!,(df   g=f)
Nr�r�r|�f1,f2,f3
1,2,abc
rrr�r�r5)rrLr�r:rorXrr:r�s   r�test_read_dict_no_fieldnames�+TestDictFields.test_read_dict_no_fieldnames�sr��
�4�'�
2�g��M�M�3�4��L�L��O��^�^�G�,�F����T�&�\�#�S��+N�O����V�.�.�0B�C�3�
2�
2�s�A6B
�

Bc	�n�[SSS9nURS5 URS5 [R"U[[R"U55S9nURUR/SQ5 UR[U5SS	S
S.5 SSS5 g!,(df   g=f)Nr�r�r|r�rr9r5rr�r�)	rrLr�r:rorrDrXr:r�s   r�#test_read_dict_fieldnames_from_file�2TestDictFields.test_read_dict_fieldnames_from_file�s���
�4�'�
2�g��M�M�3�4��L�L��O��^�^�G�/3�C�J�J�w�4G�/H�J�F����V�.�.�0B�C����T�&�\�#�S��+N�O�
3�
2�
2�s�BB&�&
B4c	�v�SSKn[SSS9nURS5 URS5 [R
"U5n[
U5nURU/U5H7nURUR/SQ5 URUSSS	S.5 M9 SSS5 g!,(df   g=f)
Nrr�r�r|r�r5rr�r�)
�	itertoolsrrLr�r:ror�chainrXr:)rr�r�rD�firstrDs      r�test_read_dict_fieldnames_chain�.TestDictFields.test_read_dict_fieldnames_chain�s����
�4�'�
2�g��M�M�3�4��L�L��O��^�^�G�,�F���L�E� ����w��7��� � ��!2�!2�4F�G�� � ��S��5�&I�J�8�3�
2�
2�s�BB*�*
B8c��[SSS9nURS5 URS5 [R"USS/S9nUR[
U5S	S
/SQS.5 SSS5 g!,(df   g=f)
Nr�r�r|�1,2,abc,4,5,6
rr6r7r9rr��r�r�rr�)r6r7Nr�r�s   r�test_read_long�TestDictFields.test_read_long�sk��
�4�'�
2�g��M�M�-�.��L�L��O��^�^�G�04�d�|�=�F����T�&�\�#�S�3I�,K�
L�3�
2�
2�s�AA/�/
A=c��[SSS9nURS5 URS5 [R"USS/SS	9nUR[
U5S
S/SQS
.5 SSS5 g!,(df   g=f)Nr�r�r|r�rr6r7�_rest)r:�restkeyrr�r��r6r7r�r�r�s   r�test_read_long_with_rest�'TestDictFields.test_read_long_with_rest�sn��
�4�'�
2�g��M�M�-�.��L�L��O��^�^�G�04�d�|�W�N�F����T�&�\�#�S�6L�,N�
O�3�
2�
2�s�AA0�0
A>c�8�[SSS9nURS5 URS5 [R"USS9nURURSS	/5 UR[U5S
S/SQS
.5 SSS5 g!,(df   g=f)Nr�r�r|zf1,f2
1,2,abc,4,5,6
rr��r�r6r7rr�r�r�)rrLr�r:rorXr:rr�s   r�&test_read_long_with_rest_no_fieldnames�5TestDictFields.test_read_long_with_rest_no_fieldnames�s~��
�4�'�
2�g��M�M�6�7��L�L��O��^�^�G�W�=�F����V�.�.��t��=����T�&�\�#�S�6L�,N�
O�3�
2�
2�s�A7B�
Bc�`�[SSS9nURS5 URS5 [R"USR5SS9nUR
[U5S	S
SSS
SS.5 UR
[U5S	S
SSSSS.5 SSS5 g!,(df   g=f)Nr�r�r|z1,2,abc,4,5,6
1,2,abc
r�1 2 3 4 5 6�DEFAULT)r:�restvalrr�r�r�rr��rr�rr�rr�)rrLr�r:ro�splitrXrr�s   r�test_read_short�TestDictFields.test_read_short�s���
�4�'�
2�g��M�M�8�9��L�L��O��^�^�G�/<�/B�/B�/D�,5�7�F�
���T�&�\��3�U�25�C�c�,K�
L����T�&�\��3�U�2;�)�2;�,=�
>�3�
2�
2�s�BB�
B-c	��/SQn[R"USR5S9nUR[	U5SSSSSS	.5 g)
N)z2147483648,43.0e12,17,abc,def
z147483648,43.0e2,17,abc,def
z47483648,43.0,170,abc,def
zi1 float i2 s1 s2r9�
2147483648z43.0e12�17r�r~)�i1�float�i2�s1�s2�r:ror�rXr)r�samplerDs   r�test_read_multi�TestDictFields.test_read_multi�sO��������+>�+D�+D�+F�H������f��l�2;�/3�/4�/4�	(6�	7rc
���[R"/SQSR5S9nUR[	U5SSSSSS	S
.5 UR[	U5SSSSSS	S
.5 g)N)r�rUr�r�r9rr�r�r�rr�r�r��rrDs  r�test_read_with_blanks�$TestDictFields.test_read_with_blanksst�����!6�+8�+>�+>�+@�B��	
����f��S�s��.1��#�(G�	H�����f��S�s��.1��#�(G�	Hrc
��[R"S/SR5SS9nUR[	U5SSSSS	S
S.5 g)Nz1;2;abc;4;5;6
r�r)r:r%rr�r�r�rr�r�r�r�s  r�test_read_semi_sep�!TestDictFields.test_read_semi_sepsO�����!4� 5�+8�+>�+>�+@�*-�/��	
����f��S�s��.1��#�(G�	HrrN)rrrrr>rCrIrMrWr]rfrkrqrurzr}r�r�r�r�r�r�r�r�r�r�r�r�rrrrr3r3Ds���;�	<�?�>�
*�1�
P�	1�8�8�8�8�4�P�D�P�	K�L�O�O�>�
7�H�Hrr3c�,�\rSrSrSrSrSrSrSrg)�TestArrayWritesic	���SSKn[S5Vs/sHnSU-
PM
 nnURSU5n[SSSS9n[R"USS	9nURU5 S
R
UVs/sHn[U5PM sn5S-nURS5 URUR5U5 SSS5 gs snfs snf!,(df   g=f)Nr�r�r�r�r#r�r\r}rTrU��arrayr�rr:rPr��joinrRr�rXr��rr�r��contentsr�r�rPr�s        r�test_int_write�TestArrayWrites.test_int_writes����$)�"�I�.�I�q�R��T�I��.��K�K��X�&��
�4�'�2�
>�'��Z�Z���9�F��O�O�A���x�x�� 3��A��Q��� 3�4�V�;�H��L�L��O����W�\�\�^�X�6�?�
>��/��!4�?�
>�s#�C�6C�6C
�;C�C�
C'c	���SSKn[S5Vs/sHnSU-
S-PM
 nnURSU5n[SSSS9n[R"US	S
9nURU5 SR
UVs/sHn[U5PM sn5S-nURS5 URUR5U5 SSS5 gs snfs snf!,(df   g=f)
Nrr�皙�����?r�r�r�r#r�r\r}rTrUr�r�s        r�test_double_write�!TestArrayWrites.test_double_write"����(-�b�	�2�	�1�R��T�3�J�	��2��K�K��X�&��
�4�'�2�
>�'��Z�Z���9�F��O�O�A���x�x�� 3��A��Q��� 3�4�V�;�H��L�L��O����W�\�\�^�X�6�?�
>��3��
!4�?�
>��#�C�6C�9C
�;C�C�
C*c	���SSKn[S5Vs/sHnSU-
S-PM
 nnURSU5n[SSSS9n[R"US	S
9nURU5 SR
UVs/sHn[U5PM sn5S-nURS5 URUR5U5 SSS5 gs snfs snf!,(df   g=f)
Nrr�r�rFr�r�r#r�r\r}rTrUr�r�s        r�test_float_write� TestArrayWrites.test_float_write-r�r�c�l�SSKnSSKnURSUR5n[SSSS9n[R
"USS9nUR
U5 S	RU5S
-nURS5 URUR5U5 SSS5 g!,(df   g=f)Nr�wr�r�r#r�r\r}rTrU)r��string�
ascii_lettersrr:rPr�r�r�rXr�)rr�r�r�r�rPr�s       r�test_char_write�TestArrayWrites.test_char_write8s�����K�K��V�1�1�2��
�4�'�2�
>�'��Z�Z���9�F��O�O�A���x�x��{�6�)�H��L�L��O����W�\�\�^�X�6�?�
>�
>�s�A,B%�%
B3rN)	rrrrr�r�r�r�rrrrr�r�s��
7�	7�	7�	7rr�c�2�\rSrSrSrSrSrSrSrSr	g)	�TestDialectValidityiCc�^�"SS[R5nU"5nURUR[R5 SUlUR[RU5 SUlUR[R5nU"5 SSS5 UR[WR5S5 SUl	[RUlSUlU"5nURUR[R5 URURS5 URUR5 SUlUR[R5nU"5 SSS5 UR[UR5S5 S	UlUR[R5nU"5 SSS5 UR[UR5S5 S
UlUR[R5nU"5 SSS5 UR[UR5S5 g!,(df   GN�=f!,(df   N�=f!,(df   N�=f!,(df   Nh=f)Nc�@�\rSrSrSrSrSrSrSr\	RrSrg)	�3TestDialectValidity.test_quoting.<locals>.mydialectiErrnFTrUrN�
rrrrr%r'r[r5r-r:r=r/rrrrrnr�E�%���I��J��K�#��#�N��n�n�Grrn�*zbad "quoting" valueTrVr#z("quotechar" must be a 1-character stringz''rz+"quotechar" must be string or None, not int)
r:rqrXr/r=r8r;rRrSr[r<r)�
assertTrue�rrnr��cms    r�test_quoting� TestDialectValidity.test_quotingDs���	%����	%�
�K��������C�N�N�3� �	�����#�)�)�Y�/��	��
�
�
�s�y�y�
)�R��K�*�����R�\�\�*�.�	0�!%�	���M�M�	��!�	���K��������C�M�M�2�������c�*�����
�
�&� �	��
�
�
�s�y�y�
)�R��K�*�����R�\�\�*�C�	E�#�	��
�
�
�s�y�y�
)�R��K�*�����R�\�\�*�C�	E� �	��
�
�
�s�y�y�
)�R��K�*�����R�\�\�*�F�	H�9*�
)��*�
)��*�
)��*�
)�s0�I*�>I<�J
�4J�*
I9�<
J
�
J�
J,c��"SS[R5nU"5nURURS5 SUlUR	[R
5nU"5 SSS5 UR[
WR5S5 SUlUR	[R
5nU"5 SSS5 UR[
UR5S5 SUlUR	[R
5nU"5 SSS5 UR[
UR5S5 S	UlUR	[R
5nU"5 SSS5 UR[
UR5S
5 SUlUR	[R
5nU"5 SSS5 UR[
UR5S5 g!,(df   GN�=f!,(df   GNX=f!,(df   GN=f!,(df   N�=f!,(df   N{=f)Nc�@�\rSrSrSrSrSrSrSr\	RrSrg)	�5TestDialectValidity.test_delimiter.<locals>.mydialectisrrnFTrUrNr�rrrrnr�sr�rrnr�:::z("delimiter" must be a 1-character stringr#�,z%"delimiter" must be string, not bytesrz#"delimiter" must be string, not intz("delimiter" must be string, not NoneType)r:rqrXr%r8r;rRrSr�s    r�test_delimiter�"TestDialectValidity.test_delimiterrs���	%����	%�
�K��������c�*�#�	��
�
�
�s�y�y�
)�R��K�*�����R�\�\�*�C�	E�!�	��
�
�
�s�y�y�
)�R��K�*�����R�\�\�*�C�	E�#�	��
�
�
�s�y�y�
)�R��K�*�����R�\�\�*�@�	B� �	��
�
�
�s�y�y�
)�R��K�*�����R�\�\�*�>�	@�#�	��
�
�
�s�y�y�
)�R��K�*�����R�\�\�*�C�	E�5*�
)��*�
)��*�
)��*�
)��*�
)�s<�#H�>H�H)�4H;�I�
H�
H&�)
H8�;
I	�
Ic��"SS[R5nU"5nURURS5 SUlUR	[R
S5 U"5 SSS5 SUlUR	[R
S5 U"5 SSS5 SUlUR	[R
S5 U"5 SSS5 S	UlUR	[R
S
5 U"5 SSS5 g!,(df   N�=f!,(df   N�=f!,(df   Nh=f!,(df   g=f)Nc�@�\rSrSrSrSrSrSrSr\	RrSrg)	�6TestDialectValidity.test_escapechar.<locals>.mydialecti�rrnFTrUrNr�rrrrnr��r�rrnrnr#z)"escapechar" must be a 1-character stringz**�*z."escapechar" must be string or None, not bytesrz,"escapechar" must be string or None, not int)r:rqrXr'rr;)rrnr�s   r�test_escapechar�#TestDialectValidity.test_escapechar�s��	%����	%�
�K��������t�,�!�	��
�
#�
#�C�I�I�/Z�
[��K�\� $�	��
�
#�
#�C�I�I�/Z�
[��K�\� $�	��
�
#�
#�C�I�I�/_�
`��K�a� !�	��
�
#�
#�C�I�I�/]�
^��K�_�
^�\�
[��\�
[��a�
`��_�
^�s0�$D�D+�D<�	E
�
D(�+
D9�<
E
�
Ec��"SS[R5nU"5nURURS5 SUlU"5nURURS5 SUlUR	[R
5nU"5 SSS5 UR[
WR5S5 g!,(df   N4=f)Nc�@�\rSrSrSrSrSrSrSr\	RrSrg)	�:TestDialectValidity.test_lineterminator.<locals>.mydialecti�rrnFTrUrNr�rrrrnr��r�rrnrUr�rz!"lineterminator" must be a string)r:rqrXr-r8r;rRrSr�s    r�test_lineterminator�'TestDialectValidity.test_lineterminator�s���	%����	%�
�K������)�)�6�2�#(�	� ��K������)�)�5�1�#$�	� �
�
�
�s�y�y�
)�R��K�*�����R�\�\�*�<�	>�*�
)�s�
C�
Cc
��SnSH�nURUS9 UR[RXS5 UR[RXS5 UR[RXS5 UR[RXS5 UR[XS5 UR[XS	5 US
:waUR[XSSS
9 SSS5 M� g!,(df   M�=f)Nc��"SS[R5n[X0U5 UR5Hup[X0U5 M U"5ng)Nc�8�\rSrSrSr\RrSrSr	Sr
g)�QTestDialectValidity.test_invalid_chars.<locals>.create_invalid.<locals>.mydialecti�rTrVrUrN)rrrrr%r:r<r/r)r-rrrrrnr��s���	��-�-���	�!'�rrn)r:rqr`�items)�
field_name�valuerqrnr�s     r�create_invalid�>TestDialectValidity.test_invalid_chars.<locals>.create_invalid�sB��
(�C�K�K�
(�

�I�5�1�%+�\�\�^�!�
��	�u�5�&4���Ar)r%r'r))r�r#r��xrGr0r1r%r2Tr%)r�r8r:r;r>)rr�r�s   r�test_invalid_chars�&TestDialectValidity.test_invalid_chars�s���		�C�J������4��!�!�#�)�)�^��L��!�!�#�)�)�^��O��!�!�#�)�)�^��N��!�!�#�)�)�^��K��!�!�*�n�$�O��!�!�*�n�$�O���,��%�%�j�.�c�7;�&�=�5�4�C�4�4�s�CC4�4
D	rN)
rrrrr�r�r�r�rrrrrr�r�Cs��,H�\'E�R�6>�*=rr�c��\rSrSrSrSrSrSrSrSr	Sr
S	rS
rSr
Sr\"S
5r\"S5r\"S5r\"S5rSrSrSrSrSrSrSrSrSrSrg)�TestSnifferi�z�Harry's, Arlington Heights, IL, 2/1/03, Kimi Hayes
Shark City, Glendale Heights, IL, 12/28/02, Prezence
Tommy's Place, Blue Island, IL, 12/28/02, Blue Sunday/White Crow
Stonecutters Seafood and Chop House, Lemont, IL, 12/19/02, Week Back
a'Harry''s':'Arlington Heights':'IL':'2/1/03':'Kimi Hayes'
'Shark City':'Glendale Heights':'IL':'12/28/02':'Prezence'
'Tommy''s Place':'Blue Island':'IL':'12/28/02':'Blue Sunday/White Crow'
'Stonecutters ''Seafood'' and Chop House':'Lemont':'IL':'12/19/02':'Week Back'
z+"venue","city","state","date","performers"
z�05/05/03?05/05/03?05/05/03?05/05/03?05/05/03?05/05/03
05/05/03?05/05/03?05/05/03?05/05/03?05/05/03?05/05/03
05/05/03?05/05/03?05/05/03?05/05/03?05/05/03?05/05/03
zT2147483648;43.0e12;17;abc;def
147483648;43.0e2;17;abc;def
47483648;43.0;170;abc;def
zaaa	bbb
AAA	
BBB	
za|b|c
d|e|f
z'a'|'b'|'c'
'd'|e|f
z+"venue"+"city"+"state"+"date"+"performers"
z�Harry's+ Arlington Heights+ IL+ 2/1/03+ Kimi Hayes
Shark City+ Glendale Heights+ IL+ 12/28/02+ Prezence
Tommy's Place+ Blue Island+ IL+ 12/28/02+ Blue Sunday/White Crow
Stonecutters Seafood and Chop House+ Lemont+ IL+ 12/19/02+ Week Back
a'Harry''s'+ Arlington Heights'+ 'IL'+ '2/1/03'+ 'Kimi Hayes'
'Shark City'+ Glendale Heights'+' IL'+ '12/28/02'+ 'Prezence'
'Tommy''s Place'+ Blue Island'+ 'IL'+ '12/28/02'+ 'Blue Sunday/White Crow'
'Stonecutters ''Seafood'' and Chop House'+ 'Lemont'+ 'IL'+ '12/19/02'+ 'Week Back'
z|
                        abc,def
                        ghijkl,mno
                        ghi,jkl
                        z~
                        abc,def
                        ghijkl,mnop
                        ghi,jkl
                         z�"time","forces"
                        1,1.5
                        0.5,5+0j
                        0,0
                        1+1j,6
                        z|"time","forces"
                        0,0
                        1,2
                        a,b
                        zabcdef
ghijklmno
ghijkl
c���[R"5nURURUR55 URURUR55 gr)r:�Snifferr��
has_header�sample12�assertFalse�sample13�r�sniffers  r�test_issue43625�TestSniffer.test_issue436255sE���+�+�-������*�*�4�=�=�9�:�����+�+�D�M�M�:�;rc���[R"5nURURUR55 URURUR
55 g)zDMore to document existing (unexpected?) behavior than anything else.N)r:rr	r�sample10�sample11rs  r�test_has_header_strings�#TestSniffer.test_has_header_strings:sG���+�+�-������+�+�D�M�M�:�;�����+�+�D�M�M�:�;rc���[R"5nURURUR5S5 URURUR
UR-5S5 g�NFT)r:rrZr�sample1�header1rs  r�test_has_header�TestSniffer.test_has_header@�P���+�+�-���
�
�g�(�(����6��>��
�
�g�(�(�������)D�E�t�Lrc���[R"5nURURUR5S5 URURUR
UR-5S5 gr)r:rrZr�sample8�header2rs  r�'test_has_header_regex_special_delimiter�3TestSniffer.test_has_header_regex_special_delimiterErrc��[R"5nSH�nURU5 URUS5nUR	UR
S5 UR	URS5 URURS5 URURS5 SSS5 M� g!,(df   M�=f)N)z	;'123;4';z'123;4';z;'123;4'z'123;4'z,;rrpF)
r:rr��sniffrXr%r)rZr[r5)rr�headerrYs    r�test_guess_quote_and_delimiter�*TestSniffer.test_guess_quote_and_delimiterJs����+�+�-��F�F����f�%�!�-�-���5��� � ��!2�!2�C�8�� � ��!2�!2�C�8��
�
�g�1�1�5�9��
�
�g�6�6��>�&�%�G�%�%�s�BB<�<
C	c���[R"5nURUR5nUR	UR
S5 UR	URS5 URURS5 URUR5nUR	UR
S5 UR	URS5 URURS5 g)NrTrVTrWrpF)
r:rr!rrXr%r)rZr5�sample2�rrrYs   r�
test_sniff�TestSniffer.test_sniffTs����+�+�-���-�-����-������*�*�C�0�����*�*�C�0��
�
�g�.�.��5��-�-����-������*�*�C�0�����*�*�C�0��
�
�g�.�.��6rc��[R"5nURUR5nUR	UR
UR5 URURSS9nUR
UR
S5 URURSS9nUR
UR
S5 URUR5nUR
UR
S5 URUR5nUR
UR
S5 URUR5nUR
UR
S5 URUR5nUR
UR
S5 UR
URS	5 URUR5nUR
UR
S
5 URUR5nUR
UR
S
5 UR
URS	5 URUR5nUR
UR
S5 g)Nz?,)�
delimiters�?z/,�/rr3r�rp�+r�)r:rr!�sample3rTr%rX�sample4�sample5�sample6�sample7r)r�sample9�sample14r's   r�test_delimiters�TestSniffer.test_delimiters`s����+�+�-���-�-����-��	
�
�
�g�'�'����6��-�-�����-�>������*�*�C�0��-�-�����-�>������*�*�C�0��-�-����-������*�*�C�0��-�-����-������*�*�D�1��-�-����-������*�*�C�0��-�-����-������*�*�C�0�����*�*�C�0��-�-����-������*�*�C�0��-�-����-������*�*�C�0�����*�*�C�0��-�-��
�
�.������*�*�D�1rc�J�[R"5nURUR5nUR	UR
5 URUR5nUR	UR
5 URUR5nURUR
5 URUR5nUR	UR
5 URUR5nURUR
5 gr)r:rr!rr	r[rr&r�rr4r's   r�test_doublequote�TestSniffer.test_doublequote|s����+�+�-���-�-����-������,�,�-��-�-����-������,�,�-��-�-����-������+�+�,��-�-����-������,�,�-��-�-����-������+�+�,rrN)rrrrrr&rr/r0r1r2r3rrr4r	rrrr
r5r
rrrr#r(r6r9rrrrrr�s����G��G��G��G��G�/�G�"�G�*�G��G��G��G����H����H����H����H��H�<�
<�M�
M�
?�
7�2�8-rrc��\rSrSrSr\rSrg)�NULi�c��grr)�sras  rrL�	NUL.write�s��rrN)rrrrrL�
writelinesrrrrr<r<�s��
��Jrr<�gettotalrefcountzrequires sys.gettotalrefcount()c�,�\rSrSrSrSrSrSrSrg)�	TestLeaksi�c��Sn[R"5n[S5H�n[R"5 UR[R/5 [R"5n[R"S/5 [R"S/5 [R"S/5 XB-
nUnM� URUS5 g)Nrr��a,b,c
r�
�sysrAr��gc�collectrX�garbager:rD�
assertLess)r�delta�lastrcr��rcs     r�test_create_read�TestLeaks.test_create_read�s������%�%�'���r��A��J�J�L����R�Z�Z��,��%�%�'�B��J�J��}�%��J�J��}�%��J�J��}�%��I�E��F��	
����q�!rc��Sn[R"5n[5n[S5H�n[R
"5 UR
[R/5 [R"5n[R"U5 [R"U5 [R"U5 XR-
nUnM� URUS5 g)Nrr�r)rGrAr<r�rHrIrXrJr:rPrK)rrLrMr>r�rNs      r�test_create_write�TestLeaks.test_create_write�s������%�%�'���E���r��A��J�J�L����R�Z�Z��,��%�%�'�B��J�J�q�M��J�J�q�M��J�J�q�M��I�E��F��	
����q�!rc�d�SnS/S-n[R"5n[S5Hrn[R"5 UR[R/5 [R"5n[R"U5nUHnM XS-
nUnMt URUS5 g)NrrErGr�rF)rrLrCrMr�rN�rdrrDs        r�	test_read�TestLeaks.test_read�s������}�Q����%�%�'���r��A��J�J�L����R�Z�Z��,��%�%�'�B��*�*�T�"�C������I�E��F��	
����q�!rc��Sn/SQ/S-n[5n[R"5n[S5H�n[R
"5 UR
[R/5 [R"5n[R"U5nUHnURU5 M Xd-
nUnM� URUS5 g)Nrr�rGr�)r<rGrAr�rHrIrXrJr:rPr�rK)	rrLrCr>rMr�rNrPrDs	         r�
test_write�TestLeaks.test_write�s������y��{���E���%�%�'���r��A��J�J�L����R�Z�Z��,��%�%�'�B��Z�Z��]�F�������$���I�E��F��	
����q�!rrN)	rrrrrOrRrVrYrrrrrCrC�s��
"�"� "� "rrCc�(�\rSrSr/SQrSrSrSrg)�TestUnicodei�)uMartin von LöwisuMarc André LemburgzGuido van RossumuFrançois Pinardc�B�[SSSS9nURSRUR5S-5 UR	S5 [
R"U5nUR[U5UR/5 SSS5 g!,(df   g=f�Nr�r#r�r�rTrUr)	rrLr��namesr�r:rDrXr�r�s   r�test_unicode_read�TestUnicode.test_unicode_read�sm��
�4��g�
>�'��M�M�#�(�(�4�:�:�.��7�8��L�L��O��Z�Z��(�F����T�&�\�D�J�J�<�8�	?�
>�
>�s�A;B�
Bc�N�[SSSS9n[R"U5nURUR5 SRUR5S-nUR
S5 URUR5U5 SSS5 g!,(df   g=fr^)	rr:rPr�r_r�r�rXr�)rr�rPr�s    r�test_unicode_write�TestUnicode.test_unicode_write�sr��
�4��g�
>�'��Z�Z��(�F��O�O�D�J�J�'��x�x��
�
�+�F�2�H��L�L��O����W�\�\�^�X�6�?�
>�
>�s�BB�
B$rN)rrrrr_r`rcrrrrr\r\�s��
!�E�
9�7rr\c� �\rSrSrSrSrSrg)�KeyOrderingTesti�c���[5n[S5H�n[SSSS9n[R"X25nUR5 UR
S5 [R"U5n[UR5nURX&5 URU5 SSS5 M� UR[U5SS5 g!,(df   M�=f)	N�abcder�r#r�r�r�xz@Key ordering: some key permutations not collected (expected 120))
�setrrr:r;r<r�ro�tupler:rX�add�len)r�	resultset�keys�
fileobject�dw�dr�kts       r�,test_ordering_for_the_dict_reader_and_writer�<KeyOrderingTest.test_ordering_for_the_dict_reader_and_writer�s����E�	� ��)�D��t�R�'�B�j��^�^�J�5����� �����"��^�^�J�/���2�=�=�)��� � ��*��
�
�b�!�C�B�*�	
����Y���.p�q�C�B�s�BC�
C!	c��[S5R5nUR[[R
"U55[
SS/5[
SSSSS/4/5[
SS	/5[
S
S/5/5 UR[[R
"USS
95[
SS/5[
SSSSS/4/5[
SS	/5[
S
S/5/5 US	UR[[R
"USS/S95[
SS/5[
SSSSS/4/5[
SS/5[
SS/5/5 g)Nz�            FirstName,LastName
            Eric,Idle
            Graham,Chapman,Over1,Over2

            Under1
            John,Cleese
        )�	FirstName�Eric)�LastName�Idle)rw�Graham)ry�Chapman�Over1�Over2)rw�Under1)ryN)rw�John)ry�Cleese�	OtherInfor�r�fname�lnamer9)r�rx)r�rz)r�r{)r�r|)r�r)r�N)r�r�)r�r�)r	�
splitlinesrXr�r:ror
)r�datas  r�test_ordered_dict_reader�(KeyOrderingTest.test_ordered_dict_reader�s�����
��Z�\�	
�	
����c�n�n�T�2�3�
�/�1E�F�
G�
�1�3J��'�7�!3�4�6�7�
�1�3E�F�
G�
�/�1G�H�
I�	
�	�	
����c�n�n�T�;�G�H�
�/�1E�F�
G�
�1�3J�&��'�(:�;�=�>�
�1�3E�F�
G�
�/�1G�H�
I�	
�	�
��G�����c�n�n�T�w��>P�Q�R�
�+�->�?�
@�
�-�/C��'�7�!3�4�6�7�
�-��?�
@�
�+�-@�A�
B�	
�	rrN)rrrrrtr�rrrrrfrf�s
��r�!rrfc�D�\rSrSrSrSr\RS5rSr	g)�MiscTestCaseic�<�[R"U[S5 g)N)r:�_csv)r�check__all__r:rs r�test__all__�MiscTestCase.test__all__s�����T�3��8rc�6�"SS[R5ng)Nc��\rSrSrSrg)�+MiscTestCase.test_subclassable.<locals>.Fooi"rNr�rrr�Foor�"s��crr�)r:r;)rr�s  r�test_subclassable�MiscTestCase.test_subclassable s��!�#�)�)�!rc���[R"S5nURUR4H&nUR	US9 [X5 SSS5 M( g!,(df   M:=f)Nr�)�tp)r�
import_module�Reader�Writerr�r)rr�r�s   r�test_disallow_instantiation�(MiscTestCase.test_disallow_instantiation$sN���*�*�6�2���+�+�t�{�{�*�B������$�,�T�6�%�$�+�$�$�s�A�
A)	rN)
rrrrr�r�r�cpython_onlyr�rrrrr�r�s&��9�"�
���7��7rr��__main__).r�rG�unittest�ior�tempfilerr:rHr��testr�test.supportrrr�r�textwrapr	�collectionsr
r�TestCaserrLr�r�r\rrr r*r,r3r�r�rr<�
skipUnless�hasattrrCr\rfr�r�mainrrr�<module>r�s����
���"�
�	�
��D�"��#���
P7�x� � �P7�fCK�(�+�+�CK�J>�(�#�#�>� _O�{�_O�B�3�9�9��?�{�?�S�k�S������A�[�A�OH�X�&�&�OH�b,7�h�'�'�,7�\^=�(�+�+�^=�Bc-�(�#�#�c-�J��

���W�S�"4�5�6�8�?"��!�!�?"�8�?"�B7�(�#�#�7�.1�h�'�'�1�h
7�8�$�$�
7��z���M�M�O�r

Youez - 2016 - github.com/yon3zu
LinuXploit