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:/Python315/Lib/test/__pycache__/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : C:/Python315/Lib/test/__pycache__/test_curses.cpython-315.opt-1.pyc
R
>lqj*<c��]PHs]PHs]PHs]PHs]PHs]PHs]PHs]QHGs]QH$G
s
GsGsG
s
GsGsGs]QHDGs\
Q2\Q2s\Q2\Q2]PHRsQsQsQ	s\O2O5Q
2sQs\O:\%(9%f\Q6HQ
\*2\O:\O<Q6HQ2QQ\O>222s QQ\O>2s!QQ\O>2s"Qs#QQ\O>2s$\%Q6Xc\OL2P!P!\cK�h9h)�)�	MagicMock)�requires�verbose�SaveSignals�cpython_only�check_disallow_instantiation�MISSING_C_DOCSTRINGS�
gc_collect)�
import_module�curseszcurses.asciizcurses.textpadc�\�[O[[U2QU*2!)zrequires curses.%s)�unittest�
skipUnless�hasattrr)�names&�%C:\Python315\\Lib\test\test_curses.py�requires_curses_funcrs&�����w�v�t�4�3�d�:�<�<�c�`�U1QkoU!)c�L:`�[OR2UU1Qk2oU!)c�:�[UOR2%f[OQR*2gRU,UN3-U@P!)zrequires curses.window.%s)r�stdscrr
�SkipTest)�self�args�kwargsr�tests&*,��r�wrapped�:requires_curses_window_meth.<locals>.deco.<locals>.wrapped#s=����4�;�;��-�-��'�'�(C�d�(J�K�K���'��'��'r��	functools�wraps)rrrsf �r�deco�)requires_curses_window_meth.<locals>.deco"s%���	����	�	(�
�	(��r�)rr"sf r�requires_curses_window_methr%!s�����Krc�H`�[OR2U1Qk2oU!)c�:�[O2%fUOQ2[O2RU,UN3-U@P!)�requires colors support)r�
has_colors�skipTest�start_color)rrrrs&*,�rr� requires_colors.<locals>.wrapped-s=���� � �"�"��M�M�3�4������T�#�D�#�F�#rr)rrsf r�requires_colorsr-,s%����_�_�T��$��$�
�Nr�TERMi��unknownz*$TERM=%r, calling initscr() may cause exit�cygwinz!cygwin's curses mostly just hangsc�`�\sQs]9sn\Q2sQs\Q2Q2s\Q2Q2s	Qs
QsQ	sQ
s
QsQsQ
sQsQsQsQsQsQsQsQsQsQsQsQsQsQsQsQs \!Q2Q2s"Q s#Q!s$Q"s%\!Q#2Q$2s&\!Q%2Q&2s'Q's(Q(s)Q)s*Q*s+Q+s,Q,s-Q-s.Q.s/Q/s0\Q02Q12s1Q2s2Q3s3Q4s4Q5s5\Q62Q72s6\Q82Q92s7\Q:2Q;2s8Q<s9Q=s:Q>s;Q?s<Q@s=\>QA2s?\>QB2s@QCsA\>QD2sB\>QE2sC\>QF2sD\QG2\>QH22sE\QI2\>QJ22sFQKsG\QL2QM2sH\QN2QO2sI\QP2QQ2sJ\QP2QR2sK\QP2QS2sL\M\QP2QT22sN\QP2QU2sO\QP2QV2sP\QP2QW2sQ\QP2QX2sR\QP2QY2sSQZsTQ[P
Q\]-Q]ksUQ^sVQ_sWQ`sXQasYQbsZQcs[Qds\Qes]Qfs^Qgs_Qhs`QisaQjsbQkscQlsdQmseQnsfQosgQpsh\Qq2Qr2si\Qs2Qt2sj\Qu2Qv2skQwslQxsm\Qy2\nO�\p\qQzQ�2Q�6Q{2Q|22srQ}ss\nO�\tQ~2Q2su\!Q#2Q�2svQ�swUsxP!)��
TestCursesc���[%c$[Q[0[OP	Q5[O
O
2o[OUQ5P!)zTERM=��file�flush)�fd)	r�print�term�sys�stderr�
__stdout__�filenor�	setupterm)�cls�	stdout_fds& r�
setUpClass�TestCurses.setUpClass?s?���7��E�$��.�s�z�z��>��N�N�)�)�+�	����I�&rc��P	Um[OUm[OO	2o[OO2%f�[
OU2oUO[
OU2UO[
OV!2[OO2%c'[Oo[OUmL1[QQ]Q5oUOUO2PUm[
OUO	2U2[2UmUO O#2UOUO O$2[&%cbUOdT[O(O+2[O,O+2[/UOP	Q5[0O22UmUO%cT[0O62UO[0O82UO[0O:2UO4O=2P![c$[OQ]Q5oP
SmCK�h9h)Tz/dev/tty�wb)�	buffering)�moderEr4)�isattyr:r<�outputr=�os�dup�
addCleanup�close�dup2�
__stderr__�open�OSError�tempfile�
TemporaryFiler�save_signals�save�restorerr;r6�stdoutr8r�initscrr�savetty�endwin�resetty�erase)rr@�dup_fd�tmps&   r�setUp�TestCurses.setUpHs�������n�n����N�N�)�)�+�	��~�~�$�$�&�&��V�V�I�&�F��O�O�B�H�H�f�-��O�O�B�G�G�V�7��~�~�$�$�&�&��n�n��!�n�n���	(��z�4�1�=�C�����	�	�*�"����G�G�C�J�J�L�)�,�'�M�������� �����)�)�1�1�2��7�t�{�{�.��J�J�����J�J�����t�{�{�$�/��n�n�&����;�;�;��N�N���O�O�F�M�M�*��O�O�F�N�N�+��������1�(�
#�0�0�d�a�H�C�"'�D�K�
(�s�J,�,	K�6 K�K�filterc�2�[O2P!�N)rr`�rs&r�test_filter�TestCurses.test_filterxs
��	�
�
�r�use_envc�`�[OP
2[OP	2P!�F)rrfrcs&r�test_use_env�TestCurses.test_use_env~s��	���u�����t�rc�P�UO[O[2P!rb)�assertIsSubclassr�error�	Exceptionrcs&r�
test_error�TestCurses.test_error�s�����f�l�l�I�6rc�	�[O]]
2oUOUO2Q2UOUO	2Q2UOUO2Q2[O]
]]]2oUOUO2Q2UOUO	2Q2UOUO2Q2UO
]]2oUOUO2Q2UOUO	2Q2UOUO2Q2UO
]]
]]2oUOUO2Q2UOUO	2Q2UOUO2Q2UO]]2oUOUO2Q	2UOUO	2Q
2UOUO2Q2UO]]]]2oUOUO2Q	2UOUO	2Q
2UOUO2Q2UO]]2UOUO2Q
2UOUO	2Q2UOUO2Q2UOUO2Q2UOUO	2Q2UOUO2Q2UOUO2Q	2UOUO	2Q
2UOUO2Q2UO]]2UOUO2Q2UOUO	2Q2UOUO2Q2UO]]2UOUO2Q	2UOUO	2Q2UOUO2Q2P!)��rr����ru)rr�
)�rr)rv�)����rw)�	�
)��)rwry)r��)���rr|)rwr|)
r�newwin�assertEqual�getbegyx�getparyx�getmaxyx�subwin�derwin�mvwin�mvderwin)r�win�win2�win3s&   r�test_create_windows�TestCurses.test_create_windows�sm���m�m�A�r�"����������0���������2���������1��m�m�B��A�q�)����������0���������2���������2��z�z�!�Q����������&�1��������&�1��������'�2��z�z�!�R��A�&���������&�1��������&�1��������'�2��z�z�!�Q����������&�1��������&�1��������'�2��z�z�!�R��A�&���������&�1��������&�1��������'�2��	�	�!�Q����������0���������2���������2��������&�1��������&�1��������'�2��������&�1��������&�1��������'�2��
�
�a����������&�1��������&�1��������'�2��
�
�a����������&�1��������&�1��������'�2rc��[O]]
2oUO]]2o=[2=[2P!�rr)rr�r�r	)rr�r�s&  r�test_subwindows_references�%TestCurses.test_subwindows_references�s2���m�m�A�r�"���z�z�!�Q��������rc�p�UOoUO]
]]]2oUO]]2UO]]2UOUO	2Q2UOUO	2Q2UO2UOUO	2Q2P!)rvr{)rwr)rr})rr��mover��getyx�	cursyncup)rrr�s&  r�test_move_cursor�TestCurses.test_move_cursor�s��������m�m�B��A�q�)�����A�q������A����������0��������f�-��
�
����������0rc���UOoUO2UOUO2P
2UO	2UOUO2P	2UO2UOUO2P
2UO	2UOUO2P	2UO2UOUO2P
2UO
]]2UOUO]2P	2UOUO]2P	2UOUO2P	2UO
]]P
2UOUO]2P
2UO]
]]]2oUO]]
]]2oUO	2UO2UO2UOUO2P	2UOUO2P	2UO	2UO2UO2UO2UOUO2P	2[UQ2%c�[OOQ2%f�UO2UO2QFDeoUOU2UO!Q2UOUO2U2UOUO2U2Jg	P!P!P!)F�syncok�sunos�a)FT)r�refresh�assertIs�
is_wintouched�touchwin�
untouchwin�	touchline�is_linetouchedr��syncup�syncdownrr:�platform�
startswithr��addch)rrr�r�r�s&    r�test_refresh_control�TestCurses.test_refresh_control�s�����������
�
�f�*�*�,�e�4������
�
�f�*�*�,�d�3������
�
�f�*�*�,�e�4������
�
�f�*�*�,�d�3������
�
�f�*�*�,�e�4�	����A���
�
�f�+�+�A�.��5��
�
�f�+�+�A�.��5��
�
�f�*�*�,�d�3�����A�u�%��
�
�f�+�+�A�.��6��m�m�B��A�q�)���z�z�!�R��A�&���
�
���������
��
�
�c�'�'�)�4�0��
�
�f�*�*�,�d�3�	�������������
�
���
�
�d�(�(�*�D�1��6�8�$�$�S�\�\�-D�-D�W�-M�-M��N�N������'�����F�#��
�
�3���
�
�c�/�/�1�6�:��
�
�f�2�2�4�f�=�	(�.N�$rc�x�UOUOO2P	![cP
!h9hrh)�encoder�encoding�UnicodeEncodeError)r�ss&&r�
_encodable�TestCurses._encodables6��	�
�H�H�T�[�[�)�)�*���"�	��	�s�%*�	9�9�9c���UOo[UQ2%c[UOV22!UO	V]2OUO2!)�in_wch)rr�strr��instr�decoder�)r�y�xrs&&& r�
_read_char�TestCurses._read_charsN�������6�8�$�$��v�}�}�Q�*�+�+��|�|�A�!�$�+�+�F�O�O�<�<rc
��UOoUOoUO2UO]]2UO	Q2UO	Q2UO	]A2QFDoUO	U2J	UO	Q[O2UO	]]Q2UO	]]Q[O2UOUO2P	2QFCD�oUOU2o[U2]6wcJ([!U2]�6�c[#UQ2%cJLU]*oUO%UQ59^tt^2UO	]]U2UO'UO)]]2U2UO	]]U[O2UO'UO)]]2U2UO+UO-]]2[O*2UO]]2UO/U2UO'UO)]]2U2UO1]]U2UO'UO)]]2U2PPP2CJ�	[#UQ2oQFCD�oUO3U2%fJU%f"[UOU22]6wcJF[!U2]�6�c[#UQ2%cJjUO%UQ59^tt^2UO	]]U2UO'UO)]]2U2UO	]]U[O2UO'UO)]]2U2UO+UO-]]2[O*2UO1]]U2UO'UO)]]2U2UO]]2UO/U2UO'UO)]]2U2PPP2CJ�	UO2UO]]2UO/Q2UO/Q2UO/]A2QFDoUO/U2J	UO/Q[O2UOUO2P
2P![
c'SO
[
SOS2CJ�[c<SOS2oSO[S2][S22CJ(h9h[
cCJ�h9h)%fhCJ�9h)%fhCJ 9h[
c'SO
[
SOS2CJ@[c<SOS2oSO[S2][S22CJ�h9h)r�A�A�get_wch)�cr��r��é�¤�€�є�r�r�r�r�)rr�r�r�r�r��assertRaisesr��
OverflowError�assertNotEqual�len�reprr�A_BOLDr�r��ordr�subTestr�r��
assertTrue�inch�echochar�inschr�)rrr�r��encoded�b�v�wides&       r�test_output_character� TestCurses.test_output_characters��������?�?���������A�q�����S�����T�����R��?�A�
D����Q��?�	���S�&�-�-�(����Q��3�����Q��3��
�
�.��
�
�f�*�*�,�d�3�+�A�
��H�H�X�&���1�v��{���1�v��}����!;�!;���!��A������"�"����Q��1�%�� � �����A�!6��:����Q��1�f�m�m�4�� � �����A�!6��:�������A�q� 1�F�M�M� A�B����A�q�!�����"�� � �����A�!6��:����Q��1�%�� � �����A�!6��:�#�"�+�<�v�x�(��*�A��?�?�1�%�%���C����� 2�3�q�8���1�v��}����!;�!;�������"�"����Q��1�%�� � �����A�!6��:����Q��1�f�m�m�4�� � �����A�!6��:�������A�q� 1�F�M�M� A�B����Q��1�%�� � �����A�!6��:����A�q�!�����"�� � �����A�!6��:�#�"�+�,	�������A�q�����������������>�A�
D�����"�?�	����V�]�]�+��
�
�f�*�*�,�e�4��i&�
J��!�!�"4�a�h�h��I�I� �
D��(�(�8�,���#�#�C��L�!�T�'�]�C�C�
D��&�
��
��#�"�"��8#�"�"��,&�
J��!�!�"4�a�h�h��I�I� �
D��(�(�8�,���#�#�C��L�!�T�'�]�C�C�
D�s��6T&�V�2D*V1	�<D*W	�W�&	V�0"V�V�7V�V�	V.�(V.�-V.�1W
�:W
�W
�W
�	Y�%"Y�Y�7Y�Yc���UOoUOoUOUO1FD�oUO	UO
29^tt^2UQ2UQ2QFDoUO
]]2UU2J 	UO
]]2UQ[O2U]]Q2U]]Q[O2PPP2J�	UOUO1FD�oUO	UO
29^tt^2UO
]]2UQ]2UQ]2QFDoUO
]]2UU]2J!	UO
]]2UQ]2UQ][O2U]]Q]2U]]Q][O2PPP2J�	P![c'SO[SOS2CJ�h9h)%fhCJ�9h[c'SO[SOS2CJh9h)%fhCJf9h)�abcdsabcd�1234s1234)usoupçonuàßçđusoupçon ¤usoupçon €�
дякую)�caféu١٢٣٤ucafé ¤u	café €r�)rr��addstr�insstrr��__qualname__r�r�r�r�rr��addnstr�insnstr)rrr��funcr�s&    r�test_output_string�TestCurses.test_output_strings��������?�?���]�]�F�M�M�2�D����d�/�/�0�0��V���W�
�_�A��K�K��1�%�R��Q��_����A�q�!��V�V�]�]�+��Q��6�"��Q��6�6�=�=�1�1�0�3�&�^�^�V�^�^�4�D����d�/�/�0�0����A�q�!��V�Q���W�a� �M�A��K�K��1�%�R��Q��
�M����A�q�!��V�Q���V�Q��
�
�.��Q��6�1�%��Q��6�1�f�m�m�4�1�0�5��.�R��)�)�*<�a�h�h��Q�Q�R��1�0�0��8.�R��)�)�*<�a�h�h��Q�Q�R��1�0�0�sz�)H	�G�AH	�&=I	�$	H �-AI	�	H�!"H�H	�H�H	�H
�H
� 	I�*"I�I	�I�I	�I&
�I&
c
��UOoQFD�oUOUQ59^tt^2UO[UOU2UO[UO
U]2UO[UOU2UO[UOU]2PPP2J�	P!)%fhJ�9h)�a)�arg)r�sa)rr�r��
ValueErrorr�r�r�r�)rrr�s&  r�&test_output_string_embedded_null_chars�1TestCurses.test_output_string_embedded_null_chars�s�������"�C����#��&�&��!�!�*�f�m�m�S�A��!�!�*�f�n�n�c�1�E��!�!�*�f�m�m�S�A��!�!�*�f�n�n�c�1�E�	'�&�#�&�&�&�s�BC	�C
�C
c�,�[O]]
]]2oUO]]Q2UOUO	2Q2UO2UO
]]Q]2UOUO]]2Q2P!)r|�abc�abcdefs
abc       �rry)rr�r�r�r�r[r�r��rr�s& r�test_add_string_behavior�#TestCurses.test_add_string_behavior�ss���m�m�A�r�1�a�(���
�
�1�a����������f�-��	�	�����A�q�(�A�&�������1�a��-�8rc��[O]]
]]2oUO]]Q2UO]]2UO	Q2UOUO
2Q2UOUO]]2Q2UO2UO]]Q2UO]]2UOQ]2UOUO]]2Q2P!)r|�abcde�XYs
aXYbcde   �ZZZZZr�s
abcZZZZZ  r�)
rr�r�r�r�r�r�r�r[r�r�s& r�test_insert_string_behavior�&TestCurses.test_insert_string_behavior�s����m�m�A�r�1�a�(���
�
�1�a��!�����A���
�
�4���������f�-�������1�a��-�8��	�	���
�
�1�a��!�����A�����H�a� �������1�a��-�8rc��[O]]
]]2oUO]]Q2UO]]2UO	[Q22UO
UO]]2Q2UO	]]Q[O2UO
UO]]2]Y[O*2P!)rwr��Xs
aXbc      �Y)
rr�r�r�r�r�r�r�r�r�r�s& r�
test_insch�TestCurses.test_insch�s����m�m�A�r�1�a�(���
�
�1�a�������A���	�	�#�c�(��������1�a��-�8��	�	�!�Q��V�]�]�+�������!�Q���6�=�=�)@�Arc
��[O]
]2oUO]]Q2UOUO	]]]2Q2UO]]]]2oUOUO
2Q2UO]]Q2UOUO	]]]2Q2UO]]]]]]
2UO]]]]]]
2[O2UO[UO2[O]]]]2oUO[UO]]]]]]2P!)rv�PADTEXTsPADTEXT�subssub)ryrr)
r�newpadr�r�r��subpadr�r��noutrefresh�doupdater��	TypeErrorr�)r�padrr�s&   r�test_pad�TestCurses.test_pad�s���m�m�B��#���
�
�1�a��#�������1�a��+�Z�8��j�j��A�q�!�$����������0��
�
�1�a���������1�a��+�V�4�	���A�q�!�Q��2�&�����1�a��A�r�*��������)�S�[�[�1��m�m�A�q�!�Q�'�����)�S�[�[�!�Q��1�a��Crc��UOoUO]]Q[O2UO	]]2UOUO
2]A[O*2UOUO
]]2]C[O*2UO	]]2UOUO2Q*Q2UOUO]2Q*Q2UOUO]]2Q*Q2UOUO]]]2Q2UO[UOQ2UO[UO]]Q2UOoQ	FD�oUOU2o[U2]6wcJ'UOUQ59^tt^2UO]]U2UOUO]]]2U2UOUO
]]2U]*2PPP2J�	P![cJ�h9h)%fhJ�9h)
r�ABCD:Nr�Ns ABCD s AB:NrNsBCD ��ch���r�)rr�rr�r�r�r�r�r�r�r�r�r�r�r�)rrr�rr�s&    r�test_read_from_window� TestCurses.test_read_from_window�s��������
�
�a��F�F�M�M�2����A�q����������V�]�]�(:�;�������Q��*�B����,>�?����A�q����������+�Y�7�������a���,�f�5�������a��+�B�/��9�������a��A�.��8����*�f�l�l�B�7����*�f�l�l�A�q�"�=�
�?�?��0�B�
��I�I�h�'���1�v��{�������$�$��
�
�a��B�'�� � ����a��A�!6��:�� � ����Q��!2�A�a�D�9�%�$�1��&�
��
��%�$�$�s+�2I�/A I/	�	I,�'I,�+I,�/J
�8J
c	�L�[O]]
]]2oUO[OUO]d]d2UO[OUOPP2UO[OUO
]d]d[
Q22UO[OUO]d]d2[UQ2%c>UO[OUO]d][O2P!P!)rrr��chgat)rr�r�rmr�r�r�r�rrr�r�s& r�test_coordinate_errors�!TestCurses.test_coordinate_errors
s����m�m�A�r�1�a�(�����&�,�,����#�s�;����&�,�,����"�b�9����&�,�,��	�	�3��S��X�F����&�,�,����#�s�;��3�� � ����f�l�l�C�I�I�s�A�v�}�}�M�!rc��[O]]
]]2oUO[UO,2UO[
UOQ2UO[UO]2UO[UO2UO[UO]]]]2P!)rr�)rr�r�rr�r�r�r�r�s& r�test_argument_errors�TestCurses.test_argument_errorss����m�m�A�r�1�a�(�����)�S�Y�Y��3����-����E�:����)�S�Z�Z��3����)�S�Z�Z�0����)�S�Y�Y��1�a��;rc��[O]]]]2oQPPP/*FDo[OU2J	UOUO	]]2]s2UOUO2Q2UOUO	]]2]p2UOUO2Q2UOUO	2]a2UOUO2Q2UOUO	2]m2UOUO	2]
2[O]�2UOUO	2]�2P!)rrzspam
)ryr|)ryr)rr��ungetchr��getchr��rr�r�s&  r�
test_getch�TestCurses.test_getch"s���m�m�A�r�1�a�(���$�B�$���A��N�N�1�� �������1�a��'�2��������f�-�������1�a��'�2��������f�-��������g�.��������f�-��������g�.��������h�/�	���t���������d�+rc�$�[O]]]]2o[O2UO[O2UO[UOQ2UO[UO]]Q2QPPP/*FDo[OU2J	UOUO]]]2Q2UOUO]]2Q2UOUO]]]
2Q2UOUO]]2Q2UOUO]]2Q2UOUO]]2Q2UOUO]2Q2UOUO]]2Q	2UOUO2Q
2UOUO]]2Q2P!)
rrzLorem
ipsum
dolor
sit
amet
sLos Lo         sipsums Lo  ipsum  sdolors     dolor  ssissi   dolor  sametsamet dolor  ip���)rr��echorK�noechor�r��getstrrr�r�rs&  r�test_getstr�TestCurses.test_getstr5s����m�m�A�r�1�a�(�����
�����
�
�&����*�c�j�j�$�7����*�c�j�j�!�Q��=�4�D�b�D�9�9�A��N�N�1��:�������A�q�!�,�e�4�������1�a��/�:�������A�q�"�-�x�8�������1�a��/�:�������A�q�)�8�4�������1�a��/�:�������A���.�������1�a��/�:��������w�/�������1�a��/�:rc�|�[O]]]]2o[U2UO]]2UO	2UOUO
]]2O2Q2UOUO
]]2O2Q2UO]]2UO2UOUO
]]2O2Q2UOUO
]]2O2Q2UOUO1FDuo[U2U2UOUO
]]2O2Q2UOUO
]]2O2Q2Jw	P!)rrsLorem ip�dolor sit amet,sLorr)rr��lorem_ipsumr��clrtoeolr�r��rstrip�clrtobotr[�clear)rr�r�s&  r�
test_clear�TestCurses.test_clearKsA���m�m�A�r�1�a�(���C������A������������1�a��/�/�1�;�?�������1�a��/�/�1�3E�F�����A������������1�a��/�/�1�6�:�������1�a��/�/�1�3�7��Y�Y��	�	�*�D�����F����S�Y�Y�q�!�_�3�3�5�s�;����S�Y�Y�q�!�_�3�3�5�s�;�	+rc��[O]]]]2o[U2UO]]2UO	2UOUO
]]2Q2UO	]]2UOUO
]]2Q2UO]]2UO2UOUO
]]2Q2UOUO
]]2Q2UOUO
]]2Q2UOUO
]]2Q2UOUO
]]2Q2UO]]2UO2UOUO
]]2Q2UOUO
]]2Q2UOUO
]]2Q2UO2[U2UO]]2UO]2UOUO
]]2Q2UOUO
]]2Q2UOUO
]]2Q2UOUO
]]2Q2UO2[U2UO]]2UOQ	2UOUO
]]2Q2UOUO
]]2Q2UOUO
]]2Q2UOUO
]]2Q2P!)
rrsLoem ipsum     sLoem ipum      sconsectetur    �adipiscing elitssed do eiusmod �               sLorem ipsum    r(r)rr�r)r��delchr�r��deleteln�insertlnr-�insdellnr�s& r�test_insert_delete�TestCurses.test_insert_delete_s����m�m�A�r�1�a�(���C������A���	�	��������1�a��*<�=��	�	�!�Q��������1�a��*<�=�����A������������1�a��*<�=�������1�a��*<�=�������1�a��*<�=�������1�a��*<�=�������1�a��*<�=�����A������������1�a��*<�=�������1�a��*<�=�������1�a��*<�=��	�	���C������A�����Q��������1�a��*<�=�������1�a��*<�=�������1�a��*<�=�������1�a��*<�=��	�	���C������A�����R��������1�a��*<�=�������1�a��*<�=�������1�a��*<�=�������1�a��*<�=rc�L�[O]]]]2o[U2UOP	2UO	2UOUO
]]2Q2UO	]2UOUO
]]2Q2UO	Q2UOUO
]]2Q2UOUO
]]2Q2UOUO
]]2Q2UOP
2P!)rrr(r1r2���)rr�r)�scrollok�scrollr�r�r�s& r�test_scroll�TestCurses.test_scroll�s����m�m�A�r�1�a�(���C�����T���
�
��������1�a��*<�=��
�
�1�
�������1�a��*<�=��
�
�2��������1�a��*<�=�������1�a��*<�=�������1�a��*<�=����U�rc�4�[O]]]]2oUO[O2UO	[O2UO[O2UO
2UO2P!r�)rr��attronr��attroff�attrset�standout�standendr�s& r�test_attributes�TestCurses.test_attributes�sX���m�m�A�r�1�a�(���
�
�6�=�=�!����F�M�M�"����F�M�M�"��������rrc��[O]]]]2oUO]]Q2UO]]Q2UO]]2UO	[O
2UO
UO]]2]p2UO
UO]]2]s[O
*2UO
UO]]2] [O
*2UO]]2UO	][O2UO
UO]]2]L2UO
UO]]2]o[O*2UO
UO]]2]e[O*2UO
UO]]2]m2UO	]][O2UO
UO]]2]o2UO
UO]]2]l[O*2UO
UO]]2] [O*2UO	]]][O
2UO
UO]]2]o[O*2UO
UO]]2]r[O
*2UO
UO]]
2]a[O
*2UO
UO]]2]m[O*2UO
UO]]2] [O*2P!)rr�Lorem ipsumzdolor sit amet)
rr�r�r�r�A_BLINKr�r�r��A_UNDERLINEr�s& r�
test_chgat�TestCurses.test_chgat�s����m�m�A�r�1�a�(���
�
�1�a��'��
�
�1�a�)�*�����A���	�	�&�.�.�!�������!�Q���1�������!�Q���6�>�>�)A�B�������!�R��'�F�N�N�*B�C�����A���	�	�!�V�]�]�#�������!�Q���1�������!�Q���6�=�=�)@�A�������!�Q���6�=�=�)@�A�������!�Q���1��	�	�!�Q��*�*�+�������!�Q���1�������!�Q���6�3E�3E�)E�F�������!�R��'�F�4F�4F�*F�G��	�	�!�Q��6�>�>�*�������!�Q���6�3E�3E�)E�F�������!�Q���6�>�>�)A�B�������!�R��'�F�N�N�*B�C�������!�R��'�F�4F�4F�*F�G�������!�R��'�F�4F�4F�*F�Grc	�	�[O]]]]2oUO]]Q2UOUO	2Q	2UOQ2UO
UO	2]_2UOQ2UO
UO	2]#2UO]A2UO
UO	2]A2UO]2UO
UO	2] 2UOQ[O2UO
UO	2]#[O*2UO
UO]]2]L2UO
UO]]2] 2UO]2UOQ2UO
UO	2]_2UO
UO]]2]L2UO
UO]]2]_2UOQ[O2UO
UO	2]#[O*2UO
UO]]2]L[O*2UO
UO]]2]#[O*2UOQ2UOoQ
FCDFoUOU2o[U2]6wcJ([U2]�6�c[UQ2%cJLUO!UQ59^tt^2UOU2UO
UO	2U]*2[U2Q6c�UOQ2UOU]*2UO
UO	2U]*2UOU]*2UO
UO	2U]*2PPP2CJI	P![cCJ\h9h)%fhCJr9h)rrrH�_�#�#� r�r�)r� r�)rr�r��assertIn�getbkgd�bkgdsetr��	A_REVERSEr��bkgdr�r�r�r�r�rr�)rr�r�rr�s&    r�test_background�TestCurses.test_background�s4���m�m�A�r�1�a�(���
�
�1�a��'��
�
�c�k�k�m�W�-�	���C����������0����D����������0����B����������+����A����������+����C��)�)�*���������&�2B�2B�(B�C�������!�Q���1�������!�Q���1����A��	����
���������0�������!�Q���1�������!�Q���1�����f�&�&�'���������&�2B�2B�(B�C�������!�Q���6�3C�3C�)C�D�������!�Q���6�3C�3C�)C�D�	����
��<�<��+�B�
��I�I�h�'���1�v��{���2�w��~�'�#�y�"9�"9�������$�$������� � ������!��5��r�7�U�?��H�H�S�M��K�K��!��%��$�$�S�[�[�]�A�a�D�9��H�H�Q�q�T�N��$�$�S�[�[�]�A�a�D�9�%�$�,��&�
��
��%�$�$�s2�Q!�:AQ4	�BQ4	�!	Q1�+Q1�0Q1�4R
�=R
c	�&�[O]]]]2o[U2[O]]]]2o[]2FDoUO	U]Q2J	UOU2UO
UO]]2Q2UO
UO]]2Q2UO
UO]]2Q2UO
UO]]2Q2UOU2UO
UO]]2Q2UO
UO]]2Q2UO
UO]]2Q2UO
UO]]2Q2UOU]]]]]]2UO
UO]]2Q2UO
UO]]2Q	2UO
UO]]2Q2UOU]]]]]]2UO
UO]]2Q
2UO
UO]]2Q2UO
UO]]2Q2P!)
rrssectetur_________spiscing_elit,____s_do_eiusmod______s_________________ssectetur       __spiscing elit,  __s do eiusmod    __s__r_sit_amet_____s__ectetur________s__r sit amet_____s__ectetur   _____�_________________)	rr�r)�ranger��overlayr�r��	overwrite)r�srcwin�dstwin�is&   r�test_overlay�TestCurses.test_overlay�s&�����q�"�a��+���F�����q�"�a��+���q��A��M�M�!�Q��'��	���v��������a��+�-A�B�������a��+�-A�B�������a��+�-A�B�������a��+�-A�B����� �������a��+�-A�B�������a��+�-A�B�������a��+�-A�B�������a��+�-A�B����v�q�!�Q��1�b�1�������a��+�-A�B�������a��+�-A�B�������a��+�-A�B������A�q�!�Q��3�������a��+�-A�B�������a��+�-A�B�������a��+�-A�Brc���[O]]]]2oUO2UO]]2UO	2UO2[O2P!r�)rr�r�redrawln�	redrawwinr�rr�s& r�test_refresh�TestCurses.test_refreshsJ���m�m�A�r�1�a�(���������Q����
�
�����
����r�resizec��[O]]]]2oUO]]2UOUO	2Q2UO]]2UOUO	2Q2P!)rr)r�)rrrx)rr�rjr�r�r�s& r�test_resize�TestCurses.test_resize!s^���m�m�A�r�1�a�(���
�
�1�b����������1��
�
�1�b����������1r�enclosec���[O]]]]2oUOUO]]2P	2UOUO]]2P
2UOUO]]2P
2UOUO]]2P	2UOUO]]2P
2UOUO]]2P
2P!r�)rr�r�ror�s& r�test_enclose�TestCurses.test_enclose)s����m�m�A�r�1�a�(���
�
�c�k�k�!�Q�'��.��
�
�c�k�k�!�Q�'��/��
�
�c�k�k�!�Q�'��/��
�
�c�k�k�!�R�(�$�/��
�
�c�k�k�!�R�(�%�0��
�
�c�k�k�!�R�(�%�0rc�
�[O]]]]2oUO]]Q2[O29^tt^2oUOU2=UO
]2[OU2oUOUO2Q2UOUO2Q2UOUO]]2Q2PPP2P!)%fhP!9h)rrrHs Lorem ipsumr{)rrr�)rr�r�rQrR�putwin�seek�getwinr�r�r�r�)rr��fs&  r�test_putwin�TestCurses.test_putwin3s����m�m�A�r�1�a�(���
�
�1�a��'�
�
#�
#�
%�
%���J�J�q�M��
�F�F�1�I��-�-��"�C����S�\�\�^�V�4����S�\�\�^�W�5����S�Y�Y�q�!�_�o�>�&�
%�
%�
%�s�BC1�1D	�:D	c�(�[O]]
]]2oUOQQQQQQQQ2UOUO	]]2Q	2UOUO	]]2Q
2UOUO	]]2Q2UOQQ
QQQQQQ2UO]A]B]C]D]E]F]G]H2UO[UO]A]B]C]D]E,]G]H2
UO[UO]A]B]C]D]E]F]G]H]I2UO[UO]A]B]C]D]E]F]G]H]I2UO]A]B]C]D]E]F]G2UO]A]B]C]D]E]F2UO]A]B]C]D]E2UO]A]B]C]D2UO]A]B]C2UO]A]B2UO]A2UO2[OoUO2vq4UOUO]]2U*[OU*2UOUO]U]*
2U*[OU*2UOUOU]*
]2U*[OU*2UOUOU]*
U]*
2U*[OU*2UOUO]]2U*[OU*2UOUO]]2U*[OU*2UO!QQ2UOUO	]]]2Q2UOUO	]]2Q2UOUO	]]]2Q2UO!QQ2UO!]A]C2UO[UO ]A]B]C2UO[UO ]A2UO!2UOUO]]2U*[OU*2UOUO]U]*
2U*[OU*2UOUO]]2U*[OU*2UOUO]]2U*[OU*2UO#]]2UO%Q]2UOUO	]]]2Q2UO%Q]2UO%]-]2UO%Q][O&2UO%]]Q]2UO%]]Q][O&2UO#]]2UO)Q]2UO)Q]2UO)]a]2UO)Q][O*2UO)]]Q]2UO)]]Q][O*2UOUO]]2];[O**2UOUO]]2];[O**2UOUO]]2]a2UO,oQ!FCDaoUO/U2o[3U2]6wcJ([5U2]�6�c[7UQ2%cJLUO9UQ59^tt^2UO;2UO%]]U]2UOUO	]]]2U]*2UO)]]U]2UOUO	]]]2U2UOUO	]]]2U2UOVfVfVfVf2UOUO	]]2Vt*2[5U2Q 6c�U]*oUO;2UO%]]U]2UOUO	]]]2U]*2UO)]]U]2UOUO	]]]2U2UOV�V�V�V�2UOUO	]]2Vt*2UO!V�2UOUO	]]]2U2PPP2CJd	P![0cCJwh9h)%fhCJ�9h)"rr�|�!�-rN�+�\rP�/s
+--------\s
|        !s
#________/�|�!�-�_�+�\rO�/�:�~s~~~~~~~~s
:        :�:�~s ----- r��a�;r�rrRr�)rr��borderr�r�r�r�
A_CHARTEXTr�r��ACS_ULCORNER�ACS_URCORNER�ACS_LLCORNER�ACS_LRCORNER�	ACS_HLINE�	ACS_VLINE�boxr��hliner��vline�
A_STANDOUTr�r�r�r�r�rr�r[)	rr��chartext�maxy�maxxr�rr�r�s	&        r�test_borders_and_lines�!TestCurses.test_borders_and_lines?s����m�m�A�r�1�a�(���
�
�3��S�#���c�3�	(�������1�a��.�9�������1�a��-�8�������1�a��-�8��
�
�4��t�T����d�	,��
�
�2�r�2�r��r�2�r�	#����)�S�Z�Z��b�"�b�"�b�"�b�	:����)�S�Z�Z��b�"�b�"�b�"�b�"�	>����)�S�Z�Z��b�"�b�"�b�"�b�"�	>��
�
�2�r�2�r�2�r�2�.��
�
�2�r�2�r�2�r�*��
�
�2�r�2�r�2�&��
�
�2�r�2�r�"��
�
�2�r�2���
�
�2�r���
�
�2���
�
���$�$���\�\�^�
��������!�Q��(�2�F�4G�4G�(�4R�S�������!�T�!�V�,�x�7��9L�9L�x�9W�X�������$�q�&�!�,�x�7��9L�9L�x�9W�X�������$�q�&�$�q�&�1�H�<�f�>Q�>Q�T\�>\�]�������!�Q��(�2�F�4D�4D�x�4O�P�������!�Q��(�2�F�4D�4D�x�4O�P�����S��������1�a��+�[�9�������1�a��M�:�������1�a��+�[�9�����d������B�����)�S�W�W�b�"�b�9����)�S�W�W�b�1����	�������!�Q��(�2�F�4G�4G�(�4R�S�������!�T�!�V�,�x�7��9L�9L�x�9W�X�������!�Q��(�2�F�4D�4D�x�4O�P�������!�Q��(�2�F�4D�4D�x�4O�P�����A���	�	�#�q��������1�a��+�Z�8��	�	�$����	�	�"�a���	�	�#�q�&�-�-�(��	�	�!�Q��Q���	�	�!�Q��Q��
�
�.�����A���	�	�#�q���	�	�$����	�	�"�a���	�	�#�q�&�+�+�,��	�	�!�Q��Q���	�	�!�Q��Q�� 1� 1�2�������!�Q���6�3D�3D�)D�E�������!�Q���6�3D�3D�)D�E�������!�Q���1��<�<��+�B�
��I�I�h�'���1�v��{���2�w��~�'�#�y�"9�"9�������$�$��	�	���	�	�!�Q��A�&�� � ����1�a��!3�Q��U�;��	�	�!�Q��A�&�� � ����1�a��!3�Q�7�� � ����1�a��!3�Q�7��
�
�2�2�2�2�:�� � ����1�a��!�(�;��r�7�U�?��!��A��I�I�K��I�I�a��A�q�)��$�$�S�Y�Y�q�!�Q�%7��Q��?��I�I�a��A�q�)��$�$�S�Y�Y�q�!�Q�%7��;��J�J�q�Q�1��6��$�$�S�Y�Y�q�!�_�a�h�?��G�G�A�M��$�$�S�Y�Y�q�!�Q�%7��;�+%�$�,��&�
��
��%�$�$�s2�	g,�*C4g?	�C>g?	�,	g<�6g<�;g<�?h
�h
c
��UO[OQ2Q2UO[OQ2Q2UO[O]A2Q2UO[OQ2Q2UO[OQ2Q2UO[O]
2Q2UOOoQ	FD�oUOU2o[U2]6wcJ'UOUQ59^tt^2UO[OU2U2UO[OU]*2U2PPP2J�	UO[[OQ2UO[[OQ2UO[[OP2UO[[OQ2UO[[OQ
2P![cCJkh9h)%fhCJ�9h)r�r��
s^J�
rrsAB�ABr�r)r�r�unctrlrr�r�r�r�r�r�rr�)rr�rr�s&   r�test_unctrl�TestCurses.test_unctrl�s���������t�,�d�3�������s�+�T�2�������r�*�D�1�������u�-�u�5�������t�,�e�4�������r�*�E�2��;�;�'�'��+�B�
��I�I�h�'���1�v��{�������$�$�� � ����r�!2�A�6�� � ����q��t�!4�a�8�%�$�,�	
���)�V�]�]�C�8����)�V�]�]�E�:����)�V�]�]�B�7����)�V�]�]�D�9����-�����>��&�
��
��%�$�$�s+�I�AI.	�	I+�%I+�*I+�.J
�7J
c��UO%fUOQ2UO[O2P
2[O
2UO[O2P	2[O2UO[O2P
2P!��requires terminal)rGr*r�r�isendwinrYrrcs&r�test_endwin�TestCurses.test_endwin�sj���{�{�{��M�M�-�.��
�
�f�o�o�'��/��
�
���
�
�f�o�o�'��.������
�
�f�o�o�'��/rc��UO[OQ2[2UO	[OQ2P2UO	[OQ2P2UO[O
Q2[2UO	[O
Q2Q2UO	[O
Q2Q2UO[OQ2[[P212UO[OQ22UO[OQ22[OQ2oUdqUOU[2[OU]2[OU]2oUOU[2[OU2[OQ2P!)�hc�cols�cr�cudsabc
r)�assertIsInstancer�	tigetflag�intr��tigetnum�tigetstr�bytes�type�assertIsNone�tparm�putp)rr��cud_2s&  r�
test_terminfo�TestCurses.test_terminfo�sW�����f�.�.�t�4�c�:�����)�)�&�1�2�6�����)�)�$�/��4����f�o�o�f�5�s�;��������.��3��������.��3����f�o�o�d�3�e�T�$�Z�5H�I����&�/�/�$�/�0����&�/�/�&�1�2��o�o�e�$���?��!�!�#�u�-��L�L��a� ��L�L��a�(�E��!�!�%��/��K�K������H�rc�,�[O]2[O2[O2UO	[O
2P
2[O]d2[O]2]22P!�r|)r�delay_output�flushinprr�r��napmsrrcs&r�test_misc_module_funcs�!TestCurses.test_misc_module_funcs�sS�����A�����������
�
�f�o�o�'��/����S���
�
�b�"�rc��UO[O2[2UO[O2[2UO[O
2[2UO[O2[2UO[O2[2UO[O2[2[O2oUOU[2UO[U2]2[O2oUOU[2UO[U2]2P!r�)r�r�termnamer��longname�baudrater��has_ic�bool�has_il�	termattrs�killcharr�r��	erasechar)rr�s& r�test_env_queries�TestCurses.test_env_queries�s������f�o�o�/��7����f�o�o�/��7����f�o�o�/��5����f�m�m�o�t�4����f�m�m�o�t�4����f�.�.�0�#�6��O�O������a��'�����Q���#���������a��'�����Q���#rc��UOoUOP	2UOP
2UOP	2UOP
2UOP
2UOP	2[	UQ2%c#UOP	2UOP
2UO
P	2UO
P
2UOP	2UOP
2UO]]
2[O2[OP	2[OP
2[O2P!)T�immedok)r�clearok�idcok�idlokrr��leaveokr;�	setscrregr�nonl�nl�rrs& r�test_output_options�TestCurses.test_output_optionss����������t�����u�����T�����U�����U�����T���6�9�%�%��N�N�4� ��N�N�5�!����t�����u����������������B�����
��	�	�$���	�	�%���	�	�rc�.�UOoUO%c�[O2[O2[OP
2[OP	2[O
P	2[O
P
2[O2[OP
2[OP	2[O2[O2[O2[OP
2[OP	2[O]�2[O]2UOP	2UOP
2[OP	2[OP
2UOP	2UOP
2[O2[OP	2[OP
2[O2UO!P	2UO!P
2UO#P2UO#]2UO#]2P!rh)rrGr�nocbreak�cbreak�	intrflush�raw�norawr#r"�	halfdelay�keypad�meta�nodelay�	noqiflush�qiflush�	notimeout�timeoutr�s& r�test_input_options�TestCurses.test_input_optionss��������;�;�;��O�O���M�M�O��M�M�%� ��M�M�$�����T�"����U�#��J�J�L��J�J�u���J�J�t���L�L�N��
�
�����
����E�����D�������������
�
�d���
�
�e�����D�����E�����t�����u���������t�����u�������������������r�����q�����q�r�	typeaheadc��[O[OO	22[OP2P!r�)rr�r:�	__stdin__r=rcs&r�test_typeahead�TestCurses.test_typeaheadMs+��������-�-�/�0�����rc��UO%fUOQ2[O2[O2P!r�)rGr*r�
def_prog_mode�reset_prog_modercs&r�test_prog_mode�TestCurses.test_prog_modeRs0���{�{�{��M�M�-�.�������� rc��[OQ2e[OQ2d[O2P![O2P![OcSO	Q2P!h9h)�bel�flashz
beep() failed)rr��beeprmr*rcs&r�	test_beep�TestCurses.test_beep\sV���O�O�E�"�.����w�'�3��K�K�M�
/����
���<�<�
/��
�
�o�.�
/���
A!�!B�5B�
Bc��[OQ2e[OQ2d[O2P![O2P![OcSO	Q2P!h9h)r�r�zflash() failed)rr�r�rmr*rcs&r�
test_flash�TestCurses.test_flashfsW���O�O�E�"�.����w�'�3��L�L�N�
0�������<�<�
0��
�
�.�/�
0�r�c���QFDLvq[OU2d[OU2J5[OU2JN	P![OcJjh9h)r))r�civis)rw�cvvis)r|�cnorm)rr��curs_setrm)r�vis�caps&  r�
test_curs_set�TestCurses.test_curs_setpsS��B�H�C����s�#�/�����$���O�O�C�(�C���|�|����s�A�A0�+A0�/A0�get_escdelayc��[O2oUOU[2[O]2UO[O2]2[OU2P!)�)rr
r�r��set_escdelayr�)r�escdelays& r�
test_escdelay�TestCurses.test_escdelayzsU���&�&�(�����h��,����B������,�,�.��3����H�%r�get_tabsizec��[O2oUOU[2[O]2UO[O2]2[OU2P!)r)rrr�r��set_tabsizer�)r�tabsizes& r�test_tabsize�TestCurses.test_tabsize�sU���$�$�&�����g�s�+����1������+�+�-�q�1����7�#r�getsyxc��[O2vqUOU[2UOU[2[O]]2UO[O2Q2P!)r�rrr)rrr�r��setsyxr�)rr�r�s&  r�test_getsyx�TestCurses.test_getsyx�sS���}�}�������a��%����a��%��
�
�a����������&�1rc�2�P[OQQQQQ1!)r|��������r�r�COLORSrcs&r�
bad_colors�TestCurses.bad_colors�s���F�M�M�:�u�j�%��O�Orc�,�[OQQQ1!)rwrr rr"rcs&r�bad_colors2�TestCurses.bad_colors2�s���
�
�u�e�U�3�3rc��Q!)r|)rurrr!r rr$rcs&r�	bad_pairs�TestCurses.bad_pairs�s��@�@rc��UO[O2[2UO[O2[2P!rb)r�rr)r��can_change_colorrcs&r�test_has_colors�TestCurses.test_has_colors�s4�����f�/�/�1�4�8����f�5�5�7��>rc�V�[O2%fUOQ2[O2[%c[[Q[O0[OQ5[Q[O0[OQ5P!P!)r(z	COLORS = )r5zCOLOR_PAIRS = )
rr)r*r+rr8r#r:r;�COLOR_PAIRSrcs&r�test_start_color�TestCurses.test_start_color�si��� � �"�"��M�M�3�4������7��I�f�m�m�_�-�C�J�J�?��N�6�#5�#5�"6�7�c�j�j�I�rc�p�UO[O[O2Q2[O]2[O]*
o[OU2UO2FD(oUO
[[OU2J*	P!)r�rrr)r�r�
color_content�COLOR_BLACKr#r$r�r�)r�maxcolor�colors&  r�test_color_content�TestCurses.test_color_content�sv������-�-�f�.@�.@�A�9�M����Q���=�=�1�$�����X�&��_�_�&�E����j�&�*>�*>��F�'rc
�4�[O2%fUOQ2[O]2o[O],UN3UO[O],UN3[O]]]]2UO[O]2Q2[O]QQQ2UO[O]2Q2[O]*
o[OU2o[OU,UN3UO[OU,UN3[OU]QQ2UO[OU2Q2UO2FD+oUO[[OU]]]2J-	QFD{oUO[[O]U]]2UO[[O]]U]2UO[[O]]]U2J}	P![O
cSOQ2CK8h9h)zcannot change colorz)cannot change color (init_color() failed)����r5)r=r=r=)rr>r=)ru��)rr-r*r6�
init_colorrmrKr�r#r$r�r�)r�oldr8r9�comps&    r�test_init_color�TestCurses.test_init_color�s����&�&�(�(��M�M�/�0��"�"�1�%��	G����a�&�#�&�	
����)�)�1�3�s�3����!�Q��1�%�����-�-�a�0�)�<����!�T�4��.�����-�-�a�0�2D�E��=�=�1�$���"�"�8�,�����(�)�S�)�����)�)�8�:�c�:����(�A�s�D�1�����-�-�h�7��H��_�_�&�E����j�&�*;�*;�U�A�q�!�L�'��D����j�&�*;�*;�Q��a��K����j�&�*;�*;�Q��4��K����j�&�*;�*;�Q��1�d�K���#�|�|�	G��M�M�E�F�	G�s�I-�-J�J�Jc���[Oo[[Q2%c�[O2%c&U][O*]**
o[O2%c!Q[O
t96:cQ6cLL[
U[2o[OU]*
]]2U!U![c[OoS!h9h)�ncurses_version)r�r|)r�rw)
rr1r�has_extended_color_supportr#rF�min�	SHORT_MAX�	init_pairr�)r�
pair_limits& r�get_pair_limit�TestCurses.get_pair_limit�s����'�'�
��6�,�-�-��0�0�2�2��a��
�
�o��1�1�
��5�5�7�7���!7�!7�@�&�@� ��Y�7�
�
0�� � ��a���A�6���z����
0�#�/�/�
���
0�s�4C�	C6�!C6�5C6c��[O]2UO2]*
oU]6�c[OU2UO2FD(oUO	[
[OU2J*	P!�r)r�pair_contentrLr*r�r�)r�maxpair�pairs&  r�test_pair_content�TestCurses.test_pair_content�sa�����A���%�%�'�!�+���Q�;�����(��N�N�$�D����j�&�*=�*=�t�D�%rc	�Z�[O]2o[O],UN3UO[O],UN3[O]]]2UO	[O]2Q2[O
]*
o[O]U]2UO	[O]2U]12[O]]U2UO	[O]2]U12UO
2]*
oU]6�c?[OU]]2UO	[OU2Q2UO2FD*oUO[[OU]]2J,	UO2FDQoUO[[O]U]2UO[[O]]U2JS	P!)r|rs)rrPrJrKr�r#rLr*r�r�r')rrAr8rQrRr9s&     r�test_init_pair�TestCurses.test_init_pair�s����!�!�!�$������!�S�!�����(�(�!�2�c�2�����A�q�!�����,�,�Q�/��8��=�=�1�$������H�a�(�����,�,�Q�/�(�A��?�����A�x�(�����,�,�Q�/�!�X��?��%�%�'�!�+���Q�;����W�a��+����V�0�0��9�6�B��N�N�$�D����j�&�*:�*:�D�!�Q�G�%��%�%�'�E����j�&�*:�*:�A�u�a�H����j�&�*:�*:�A�q�%�H�(rc��QFDzo[OU2oUO[OU2V2UO[OU[O*2U2J|	UO[O]2]2UO[O]2]2P!)r)rr|�)r�
color_pairr��pair_numberr�)rrR�attrs&  r�test_color_attrs�TestCurses.test_color_attrss����D��$�$�T�*�D����V�/�/��5�t�B����V�/�/��v�}�}�0D�E�t�L��	
����*�*�1�-�q�1�����+�+�A�.��2r�use_default_colorsc���[O2UO	[O
]2Q2P![OcSOQ2KPh9h)z1cannot change color (use_default_colors() failed)rt)rr_rmr*r�rPrcs&r�test_use_default_colors�"TestCurses.test_use_default_colorssU��	O��%�%�'�	
����,�,�Q�/��:���|�|�	O��M�M�M�N�	O�s�A�A)�A)�(A)�assume_default_colorsc�f�[OPP2UO	[O
]2Q2[O[O[O2UO	[O
]2[O[O12[O[OP2UO	[O
]2[OP12[OP[O2UO	[O
]2P[O12[OPP2P![OcSOQ2CK�h9h)r|z4cannot change color (assume_default_colors() failed)rt)
rrcrmr*r�rP�COLOR_YELLOW�
COLOR_BLUE�	COLOR_RED�COLOR_GREENrcs&r�test_assume_default_colors�%TestCurses.test_assume_default_colorss)��	R��(�(��R�0�	
����,�,�Q�/��:��$�$�V�%8�%8�&�:K�:K�L�����,�,�Q�/�&�2E�2E�v�GX�GX�1Y�Z��$�$�V�%5�%5�r�:�����,�,�Q�/�&�2B�2B�B�1G�H��$�$�R��);�);�<�����,�,�Q�/�"�f�6H�6H�1I�J��$�$�R��,���|�|�	R��M�M�P�Q�	R�s�F�F0�F0�/F0c���UO[O]A2Q2UO[O]
2Q2UO[O]2Q2UO[O]2Q2UO[[OP2UO[OQ2[2P!)�Ar�s^Ms^?s^@rR)r�r�keynamer�r�r�r�rcs&r�test_keyname�TestCurses.test_keyname$s����������+�T�2��������+�U�3��������,�e�4��������*�E�2����*�f�n�n�b�9����f�n�n�S�1�5�9r�has_keyc���UO[O]
2[2UO[O[O2[2P!)r~)r�rrpr��KEY_LEFTrcs&r�test_has_key�TestCurses.test_has_key-s8�����f�n�n�R�0�$�7����f�n�n�V�_�_�=�t�Dr�getmousec�*�[O[O2vqU]6XcUOQ2[O]
2[O
]]]][O2[O2oP!)rzmouse stuff not available)r�	mousemask�BUTTON1_PRESSEDr*�
mouseinterval�
ungetmouseru)r�	availmask�oldmask�ms&   r�
test_getmouse�TestCurses.test_getmouse2se��%�/�/��0F�0F�G�����>��M�M�5�6����R� ����!�Q��1�f�&<�&<�=��O�O��r�panelc�4�[O]
]
2o[OOU2oUO	[OO
QQ59^tt^2UO
2PPP2P!)%fhP!9h)rvz!userptr should fail since not set)�msg)rr�r��	new_panelr�rm�userptr)r�w�ps&  r�test_userptr_without_set�#TestCurses.test_userptr_without_set<sq���M�M�"�b�!���L�L�"�"�1�%��
�
�
�v�|�|�1�1�#F��H�H�
�I�I�K�H�H�H�H�s�+B�B	�B	c�l�[O]
]
2o[OOU2o[	2o[
OU2o[]d2FDoUOU2J	UOP2UO[
OU2UQ2P!)rvzset_userptr leaked references)
rr�r�r��objectr:�getrefcountr]�set_userptrr�)rr�r��obj�nrefsrbs&     r�test_userptr_memory_leak�#TestCurses.test_userptr_memory_leakEs����M�M�"�b�!���L�L�"�"�1�%���h������$���s��A�
�M�M�#���	
�
�
�d���������-�u�8�	:rc��`�[O]
]
2o[OOU2nU1QkQ2oRO	U22RO	P2P!)rvc�0:`�\sQsQsnU1QksQsUsP!)�+TestCurses.test_userptr_segfault.<locals>.AiVc�,:�ROP2P!rb)r�)rr�s&�r�__del__�3TestCurses.test_userptr_segfault.<locals>.A.__del__Ws����!�!�$�'rr$)�__name__�
__module__r��__firstlineno__r��__static_attributes__�__classdictcell__)�
__classdict__r�s@�rr�r�Vs����
(�
(rr�)rr�r�r�r�)rr�r�r�s&  @r�test_userptr_segfault� TestCurses.test_userptr_segfaultRsQ����M�M�"�b�!�����&�&�q�)��	(�	(�	���!�#��
���$�rc��[O]
]
2o[OOU2o[	U[U22P!)rv)rr�r�r�rr�)rr�r�s&  r�test_disallow_instantiation�&TestCurses.test_disallow_instantiation\s6��
�M�M�"�b�!�����&�&�q�)��$�T�4��;�7rc��[OoUO[O]]]]22oUO[O]]]]22oUO[O]]]]22oUO	UO
V#U2UO
UO2U2UOUO2O2Q2UO
UO2U2UO
UO2U2UOUO22UO
UO2U2UO
UO2U2UO2UO
UO2U2UOUO22UO2UO
UO!2U2UOUO22UO#2P!)ry�r|r|)rr�r�r�rK�_delete_panelsr��	top_panelr��windowr��abover��below�top�bottom�bottom_panel�
update_panels)rr��p1�p2�p3s&    r�test_panel_stack�TestCurses.test_panel_stackds��������_�_�V�]�]�1�a��A�6�
7��
�_�_�V�]�]�1�a��A�6�
7��
�_�_�V�]�]�1�a��A�6�
7������+�+�R�R�8�	
�
�
�e�o�o�'��,��������-�-�/��8�	
�
�
�b�h�h�j�"�%��
�
�b�h�h�j�"�%����"�(�(�*�%��
�
�b�h�h�j�"�%��
�
�b�h�h�j�"�%�	�����
�
�e�o�o�'��,����"�(�(�*�%�
�	�	���
�
�e�(�(�*�B�/����"�(�(�*�%�	���rc��[OO[O]]]]22oUO	UO
U2UO
UO2P
2UO2UO
UO2P	2UO2UO
UO2P
2P!�ry)
rr�r�r�rKr�r��hidden�hide�show)rr�s& r�test_panel_hide_show�TestCurses.test_panel_hide_show�s����L�L�"�"�6�=�=��A�q�!�#<�=������+�+�Q�/��
�
�a�h�h�j�%�(�	�����
�
�a�h�h�j�$�'�	�����
�
�a�h�h�j�%�(rc�T�[O]]]]2o[OOU2oUO	UO
U2UO
UO2Q2UO]]2UO
UO2Q2P!)ryr{r)	rr�r�r�rKr�r�r�r�)rr�r�s&  r�test_panel_move�TestCurses.test_panel_move�sw���m�m�A�q�!�Q�'���L�L�"�"�3�'������+�+�Q�/���������0�	���q�!����������0rc��[O]]]]2o[O]]]]2o[OOU2oUO	UO
U2UO
UO2U2UOU2UO
UO2U2P!r�)	rr�r�r�rKr�r�r��replace)r�win1r�r�s&   r�test_panel_replace�TestCurses.test_panel_replace�s����}�}�Q��1�a�(���}�}�Q��1�a�(���L�L�"�"�4�(������+�+�Q�/��
�
�a�h�h�j�$�'�	�	�	�$���
�
�a�h�h�j�$�'rc��[OO[O]]]]22oUO	UO
U2Q,oUO
U2UOUO2U2P!)ryr�)	rr�r�r�rKr�r�r�r�)rr�r�s&  r�test_panel_userptr�TestCurses.test_panel_userptr�s`���L�L�"�"�6�=�=��A�q�!�#<�=������+�+�Q�/��k��	�
�
�c���
�
�a�i�i�k�3�'rc��SFDoUO2J	=[	2P![OOcJGh9hrb)r�rr�rmr	)r�panelsr�s&* rr��TestCurses._delete_panels�sD���A�
����
��

�����<�<�%�%�
��
�s�*�A
�A
�A
�insert_mode�stripspacesc��[OV]]2o[OOVSQ5oVFmVe1!)r�r�)rr��textpad�Textboxr�)r�nlines�ncolsr�r�r�r�s&&&$$  r�
_make_textbox�TestCurses._make_textbox�s7���m�m�F�1�a�0���n�n�$�$�S�$�B��%���x�rc��SFD5oSO[U[2%cSL
[U22J7	P!rb)�
do_command�
isinstancer�r�)rr��textrs&&& r�_type�TestCurses._type�s*���B��N�N��B��!4�!4�2�#�b�'�B�rc��UO]]
2vqUOUQ2UOUO2Q2P!)ry�HellozHello 
�r�r�r��gather�rr�r�s&  r�test_textbox_gather�TestCurses.test_textbox_gather�s<���%�%�a��,����
�
�3�� ��������z�2rc�
�UO]]
2vqUOUQ2UO[OO
2UOUQ2UO
UO2Q2P!)ry�ab�cdzab 
cd 
�r�r�r�r�ascii�NLr�r�r�s&  r�test_textbox_gather_multiline�(TestCurses.test_textbox_gather_multiline�s\���%�%�a��,����
�
�3������v�|�|���'��
�
�3����������|�4rc�(�UO]]]Q5vqUOUQ2UOUO2Q2UO]]]Q5vqUOUQ2UOUO2Q2P!)r|�r��hizhi zhi      r�r�s&  r�test_textbox_stripspaces�#TestCurses.test_textbox_stripspaces�s|���%�%�a���%�:����
�
�3����������u�-��%�%�a���%�:����
�
�3����������z�2rc���UO]]
P	Q5vqUOUQ2UO]]2UOUQ2UOUO	2Q2P!)r|r��aXcr�zabXc )r�r�r�r�r�r�s&  r�test_textbox_insert_mode�#TestCurses.test_textbox_insert_mode�sZ���%�%�a���%�>����
�
�3�������A���
�
�3����������w�/rc��UO]]]Q5vqUOUQ2UOUO2Q2P!)r|r�r�r�r�s&  r�test_textbox_fill_last_cell�&TestCurses.test_textbox_fill_last_cell�sA���%�%�a���%�:����
�
�3����������v�.rc��UO]]]Q5vqUOUQ2UO[OO
2UOUQ2UO
UO2Q2P!�rwr�r��defzabc
def
r�r�s&  r�%test_textbox_fill_last_cell_multiline�0TestCurses.test_textbox_fill_last_cell_multiline�sa���%�%�a���%�:����
�
�3������v�|�|���'��
�
�3����������|�4rc��UO]]P	]Q5vqUOUQ2UOUO2Q2P!)r|)r�r�r�r�r�s&  r�'test_textbox_fill_last_cell_insert_mode�2TestCurses.test_textbox_fill_last_cell_insert_mode�sA���%�%�a���!�%�L����
�
�3����������v�.rc�0�UO]]]Q5vqUOP	2UOUQ2UO[O
O2UOUQ2UOUO2Q2P!r�)	r�r;r�r�rr�r�r�r�r�s&  r�$test_textbox_fill_last_cell_scrollok�/TestCurses.test_textbox_fill_last_cell_scrollok�so���%�%�a���%�:������T���
�
�3������v�|�|���'��
�
�3����������|�4rc	���UOOoQFD�oUOU2o[	U2[	U26wcJ0UOUQ59^tt^2UO
]]2vqESFDoUOU2J	UOUO2UQ*2PPP2J�	P![cJ�h9h)%fhJ�9h)r�)r�rQ)r�r�unaïve ¤¦u
café €Šžuдякую єі�
rr�r�r�r�r�r�r�r�r�)rr�r��datar�r��bytes&      r�test_textbox_8bit�TestCurses.test_textbox_8bit�s����;�;�'�'��W�D�
��{�{�8�,���4�y�C��I�%�����4��(�(��-�-�a��4��� �D��N�N�4�(�!�� � �����t�c�z�:�	)�(�X��&�
��
��)�(�(�s*�C
�%AC	�
	C�C�C�C-
�%C-
c
�v�UOOoQFD�oUOU2o[	U2]6wcJ'UOUQ59^tt^2UO
]]
P	Q5vqEQU*Q*OU2FDoUOU2J	UO]]2UO[Q22UOUO2QU*Q*2PPP2J�	P![cCJh9h)%fhCJ9h)	r�rr�r�r�r�r�zc r�)rr�r�r�r�r�r�r�r�r�r�r�)rr�rr�r�r�rs&      r�test_textbox_8bit_insert�#TestCurses.test_textbox_8bit_inserts���
�;�;�'�'��+�B�
��y�y��*���4�y�A�~�������$�$��-�-�a���-�F��� �2�X��^�3�3�H�=�D��N�N�4�(�>�����A�����s�3�x�(�� � �����t�b�y�4�/?�@�
%�$�,��&�
��
��%�$�$�s*�D�B)D&	�	D#�D#�"D#�&D8
�/D8
c
��UOOoQFD�oUOU2o[	U2]6wcJ'UOUQ59^tt^2QU*oUO
][	U2]Q5vqVUOU2FDoUOU2J	UOUO2U2PPP2J�	P![cJ�h9h)%fhJ�9h)r�rr�r�r�r�)rr�rr�r�r�r�rs&       r� test_textbox_8bit_fill_last_cell�+TestCurses.test_textbox_8bit_fill_last_cell's����;�;�'�'��+�B�
��y�y��*���4�y�A�~�������$�$��b�y���-�-�a��T���-�J��� �K�K��1�D��N�N�4�(�2�� � �����t�4�%�$�,��&�
��
��%�$�$�s*�C�A3C/	�	C,�'C,�+C,�/D
�8D
c�x�UO]]
2vqUOUQ2UO[OO
2UO
UO2Q2UO[OO2UO
UO2Q2P!)ryr�rsr�)	r�r�r�rr��SOHr�r��ENQr�s&  r�test_textbox_movement� TestCurses.test_textbox_movement:s|���%�%�a��,����
�
�3������v�|�|�'�'�(��������f�-����v�|�|�'�'�(��������f�-rc�
�UO]]
2vqUOUQ2UO]]2UO[O
O2UOUO2Q2P!)r|r�zabc )	r�r�r�r�rr��VTr�r�r�s&  r�test_textbox_kill_to_eol�#TestCurses.test_textbox_kill_to_eolBs[���%�%�a��,����
�
�3��!�����A�����v�|�|���'��������v�.rc���UO]]
2vqUOUQ2UO[OO
2UO
UO2Q2P!)r|r�zab )r�r�r�rr��BSr�r�r�s&  r�test_textbox_backspace�!TestCurses.test_textbox_backspaceIsN���%�%�a��,����
�
�3������v�|�|���'��������u�-rc��UO]]
2vq[Q[[OO
2*2FDo[OU2J	UOUO2Q2P!)r|�HizHi )	r��reversed�chrrr��BELrr��edit�rr�r�rs&   r�test_textbox_edit�TestCurses.test_textbox_editOs[���%�%�a��,����4�#�f�l�l�&6�&6�"7�7�8�B��N�N�2��9��������U�+rc�6�UO]]
2vq[Q[[OO
2*2FDo[OU2J	UOQ2UOUO2Q2P!)r|r�c�>�U[Q26Xc[Q2!S!)r�r�)r�rs&r�<lambda>�7TestCurses.test_textbox_edit_validate.<locals>.<lambda>[s���c�#�h��C��H�>�B�>rzaXc )
r�rrrr�rrrr�r�rs&   r�test_textbox_edit_validate�%TestCurses.test_textbox_edit_validateVsh���%�%�a��,����5�3�v�|�|�'7�'7�#8�8�9�B��N�N�2��:����>�?��������v�.rc��[O]]]]2o[OOU]]]]2[OoUOUO
]]2U*[OU*2UOUO
]]2U*[OU*2UOUO
]]2U*[OU*2UOUO
]]2U*[OU*2UOUO
]]2U*[OU*2UOUO
]]2U*[OU*2P!)r�)
rr�r��	rectangler�r�r�r�r�r�r�r�r�)rr�r�s&  r�test_textpad_rectangle�!TestCurses.test_textpad_rectangle^sI���m�m�A�r�1�a�(����� � ��a��A�q�1��$�$��������!�Q��(�2��,�,�x�7�	9�������!�Q��(�2��,�,�x�7�	9�������!�Q��(�2��,�,�x�7�	9�������!�Q��(�2��,�,�x�7�	9�������!�Q��(�2��)�)�H�4�	6�������!�Q��(�2��)�)�H�4�	6rc� `�RO%fROQ2U1QkoRO[OU]]2]2RO[O2P	2[O2P!)r�c�:�ROU[RO22RO[O
2P
2V*!rh)r�r�rr�rr�)rr�r�rs&&&�r�body�%TestCurses.test_wrapper.<locals>.bodyvs8����!�!�&�$�t�{�{�*;�<��M�M�&�/�/�+�U�3��5�Lr)rGr*r�r�wrapperr�r�r)rr+sf r�test_wrapper�TestCurses.test_wrapperps`����{�{�{��M�M�-�.�	�
	
�������a��3�Q�7��
�
�f�o�o�'��.�	���r�is_term_resizedc��[O[Oq!UO[OV2P
2UO[OU]*
U]*
2P	2P!rh)r�LINES�COLSr�r0�r�linesr�s&  r�test_is_term_resized�TestCurses.test_is_term_resized�sM���l�l�F�K�K�t��
�
�f�,�,�U�9�5�A��
�
�f�,�,�U�1�W�d�1�f�=�t�Dr�resize_termc�v�[O2[O[Oq!U]*
oU]*o[OV42UO[OU2UO[OU2[OV2UO[OU2UO[OU2UO
[29^tt^2[OQ]2PPP2UO
[29^tt^2[O]Q2PPP2[O2oUO2P!)%fhKt9h)%fhKJ9h�r|i��)
r�update_lines_colsr2r3r8r�r�r�rWr[�rr5r��	new_lines�new_colsr]s&     r�test_resize_term�TestCurses.test_resize_term�s��� � �"��l�l�F�K�K�t��A�I�	��!�8�����9�/�������y�1�������h�/����5�'�������u�-�������d�+�
�
�
�}�
-�
-����u�a�(�.�
�
�
�}�
-�
-����q�%�(�.��n�n����	�	��
.�
-��
-�
-��$�F�F(�F%	�F%	�(F8	�1F8	�
resizetermc�v�[O2[O[Oq!U]*
oU]*o[OV42UO[OU2UO[OU2[OV2UO[OU2UO[OU2UO
[29^tt^2[OQ]2PPP2UO
[29^tt^2[O]Q2PPP2[O2oUO2P!)%fhKt9h)%fhKJ9hr:)
rr;r2r3rBr�r�r�rWr[r<s&     r�test_resizeterm�TestCurses.test_resizeterm�s��� � �"��l�l�F�K�K�t��A�I�	��!�8�����)�.�������y�1�������h�/����%�&�������u�-�������d�+�
�
�
�}�
-�
-����e�Q�'�.�
�
�
�}�
-�
-����a��'�.��n�n����	�	��
.�
-��
-�
-�rAc��[OQ2UOUOO	2Q2[OQ2UOUOO	2Q2[O]C2UOUOO	2Q2P!)r�r��B�C)rrr�r�getkeyrcs&r�test_ungetch�TestCurses.test_ungetch�s}�����t��������+�+�-�s�3����s��������+�+�-�s�3����r��������+�+�-�s�3rc�h�[OQ2UOO2P!)i)rrrrIrcs&r�test_issue6243�TestCurses.test_issue6243�s�����t�������r�	unget_wchrFz.unget_wch is broken in ncurses 5.7 and earlierc��UOoUOoQFD�oUOU2[O
U2UO2oUOVS2[U2o[O
U2UO2oUOVS2J�	P![cJ�h9h[c2oSOQS8QSO8QS802Po=K�Po=hh9h)r�z
unget_wch(z) failed with encoding z: )r�r�r�r�r�u􏿿)rr�r�r�rrOrn�failr�r�r�)rrr�r�err�read�codes&      r�test_unget_wch�TestCurses.test_unget_wch�s��������?�?��I�B�
��	�	�(�#�
8�� � ��$��>�>�#�D����T�&��r�7�D����T�"��>�>�#�D����T�&�!J��&�
��
���
8��	�	�����#�7�8�8��
8�s4�B2�C�2	C�<C�C�	D�D�'C;�;Dc�f�UOo]PHoUOoUOU2UO	[
29^tt^2]
UmPPP2V1mUO	[
29^tt^2U;PPP2P!)%fhK@9h)%fhP!9hrO)r�codecsr��lookupr�r)rrrXr�s&   r�
test_encoding�TestCurses.test_encoding�sx��������?�?���
�
�h��
�
�
�y�
)�
)� �F�O�*�"��
�
�
�y�
)�
)���*�
)�*�
)��*�
)�
)�s$�B�?B�B	�B	�B0	�(B0	z6Signature information for builtins requires docstringsc�"�UOo[OUO2oUO	U2UOOOQ2]*oUOQU2P![
cKMh9h)r�z[y, x,])	r�inspect�	signaturer��assertFalser��__doc__�splitrT)rrr^�human_readable_signatures&   r�test_issue21088�TestCurses.test_issue21088�sy������	��)�)�&�,�,�7�I����Y�'�$*�<�<�#7�#7�#=�#=�d�#C�A�#F� ��
�
�i�!9�:���	��	�s�1B�	B�
B�
Bc��[O]]]]2o[OOUP	Q5oUO	2vq4UOU]*
U]*
2UO
Q2P!)rrr�r�)rr�r�r�r�rj�_insert_printable_char)rr�r�r5r�s&    r�test_issue13051�TestCurses.test_issue13051s`���m�m�A�r�1�a�(���n�n�$�$�S�d�$�;���l�l�n����
�
�5��7�D��F�#��"�"�3�'r)rGrHrSr)�c)rrr�)yr�r�r�r��classmethodrAr^rrdriror�r�r�r�r�r�r�r�r�r�r�r�r
rrrrr%r.r7r=rEr%rKrYrcrhrmrqrxr�r�r�r�r�r�r�r�r�r�r�r�rrrrr$r'r*r.r2r-r:rCrLrSrVr]rarirnrsr~r�r�r�rr�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�rrrrrrrr#r'r.r6r?rDrJrMr
�skipIf�getattrrrUrZrrcrgr�r��r�s@rr2r29s�����'��'�.�`�(�#��$��
�)�$��%��7�23�h�	1�.>�p�	=�c5�J'5�RF�9�9�"	B�D�*:�@N�	<�,�&;�,<�((>�T��!��)�H�*�H�<::�xC�:�!��*�2�+�2�!��+�1�,�1�
?�j<�X?�60��0	�$� �:,�\�+�&��'��!�/�0���.�)�&�*�&��-�(�$�)�$��(�#�2�$�2�P�4�A�?�J��G��G��L��L�:�"�E��E��I��I�.�3��3��.�/��;��0�;��1�2��-��3�-�:��)�$�E�%�E��*�%��&���'�"��#���'�"�
:�#�
:��'�"� �#� ���'�"�8�#��8��'�"��#��@�'�"�)�#�)��'�"�1�#�1��'�"�(�#�(��'�"�(�#�(�	��%��Q��C�3�5�3�0�/�5�/�
5�;�,A�*5�&.�/�.�,�/�6�$�"�+�,�E�-�E�
�-�(��)��*�,�'��(��*4���+�&�
�_�_�W�V�%6��>��G�E�G�'�G�'�'�,	 ��_�_�)�M�O�;�O�;�8!��*�(�+�(rr2c�``�\sQsQsn\Q2Q2s\Q2Q2sQsQsUs	P!)�	MiscTestsir;c�F�[O2[O[Oq!]9[m[m[O2UO	[OU2UO	[OU2P!rO)rr;r2r3r�r4s&  r�test_update_lines_cols� MiscTests.test_update_lines_cols
s_��� � �"��l�l�F�K�K�t�%&�&���v�{�� � �"�������u�-�������d�+rrFc���[Oo[%c[Q[O0P	Q5UO	UQ*[
2UO
[U2]2UO	U]*[2UO	U]*[2UO	U]*[2UO	UO[2UO	UO[2UO	UO[2UO
U]*UO2UO
U]*UO2UO
U]*UO2UOUO]2UOUO]2UOUO]2P!)zncurses_version = )r6:NNN)
rrFrr8r��tupler�r�r��major�minor�patch�assertGreaterEqual)rr�s& r�test_ncurses_version�MiscTests.test_ncurses_versionsO���"�"���7��&�v�'=�'=�&>�?�t�L����a��d�E�*�����Q���#����a��d�C�(����a��d�C�(����a��d�C�(����a�g�g�s�+����a�g�g�s�+����a�g�g�s�+�����1��q�w�w�'�����1��q�w�w�'�����1��q�w�w�'��������+��������+��������+rc�^�[O2oUOU[2P!rb)rrGr�r�)r�rs& r�test_has_extended_color_support�)MiscTests.test_has_extended_color_support*s ���-�-�/�����a��&rr$)
r�r�r�r�rrqryr}r�r�rms@rrorosA�����-�.�,�/�,��+�,�,�-�,�&'�'rroc�F`�\sQsQsnQsQsQsQsQsQs	Qs
UsP!)	�	TestAsciii/c��[OOFD#oUO[OU2J%	P!rb)rr��controlnames�
assertHasAttr)rrs& r�test_controlnames�TestAscii.test_controlnames1s*���L�L�-�-�D����v�|�|�T�2�.rc�```�UUU1Qko[Q2FCD�n[R2n[R,2oU[OO
UO22U[OOUO
22U[OOUO22U[OOUO22U[OOUO22U[OOUO22U[OOR]�62U[OOR]�6�2U[OOR] 62S[OOR] 69%fR]6H2U[OORQ72S[OO ] Rt969%c]~6*Lt2S[OO"] Rt96*9%c]~6*Lt2U[OO$R[&O(72U[OO*R[&O,72CJ�	QPQ[.O0[.O0]*1FCD�nRO3[OOR22RO3[OO
R22RO3[OOR22RO3[OOR22RO3[OOR22RO3[OOR22RO3[OOR22RO3[OOR22RO3[OOR22RO3[OOR22RO3[OO!R22RO3[OO#R22RO3[OO%R22RO3[OO+R22CJ�	RO3[OOP22P!)c��:�RORUQ59^tt^2ROUR2U2ROUR2U2PPP2P!)%fhP!9h))rr�)r�r�)r��expectedr�rbrs&&���r�check�$TestAscii.test_ctypes.<locals>.check6sM���������.�.�� � ��a��(�3�� � ��a��(�3�/�.�.�.�s�1A�A*	�"A*	rRz 	r)r]rr�rr��isalnum�isalpha�isdigit�islower�isspace�isupper�isascii�ismeta�isctrl�iscntrl�isblank�isgraph�isprint�ispunct�string�punctuation�isxdigit�	hexdigitsr:�
maxunicoder_)rr�r�r�rbsf  @@r�test_ctypes�TestAscii.test_ctypes5s����	4�
�s���A��A��A��q�c�
�A��&�,�,�&�&��	�	��4��&�,�,�&�&��	�	��4��&�,�,�&�&��	�	��4��&�,�,�&�&��	�	��4��&�,�,�&�&��	�	��4��&�,�,�&�&��	�	��4��&�,�,�&�&��C��0��&�,�,�%�%�q�C�x�0��&�,�,�%�%�q�2�v�.��&�,�,�&�&��B��(:�(:�!�s�(�;��&�,�,�&�&��U�
�3��&�,�,�&�&��Q�
�
�#�
�6��&�,�,�&�&��a���3��7��&�,�,�&�&��V�-?�-?�(?�@��&�,�,�'�'��f�.>�.>�)>�?�%�(�b�#�s�~�~�s�~�~�a�/?�@�A����V�\�\�1�1�!�4�5����V�\�\�1�1�!�4�5����V�\�\�1�1�!�4�5����V�\�\�1�1�!�4�5����V�\�\�1�1�!�4�5����V�\�\�1�1�!�4�5����V�\�\�1�1�!�4�5����V�\�\�0�0��3�4����V�\�\�1�1�!�4�5����V�\�\�1�1�!�4�5����V�\�\�1�1�!�4�5����V�\�\�1�1�!�4�5����V�\�\�1�1�!�4�5����V�\�\�2�2�1�5�6�A�"	
������,�,�R�0�1rc���[OOoUOUQ2Q2UOUQ2Q2UOU[Q22[Q22P!)�Ár�)rr�r�r�)rr�s& r�
test_ascii�TestAscii.test_asciibsV�����"�"������v���,�����s��S�)�����s�6�{�+�S��X�6rc� �[OOoUOUQ2Q2UOUQ2Q2UOUQ2Q2UOU[	Q22[	Q22P!)�Jr��@�)rr��ctrlr�r�)rr�s& r�	test_ctrl�TestAscii.test_ctrlhsi���|�|� � ������c��D�)�����d��T�*�����c��D�)�����c�#�h���T��3rc���[OOoUOUQ2Q2UOUQ2Q2UOU[	Q22]�2P!)r��Šr�r�)rr��altr�r�)rr�s& r�test_alt�TestAscii.test_altosQ���l�l��������T��F�+�����S��6�*�����S��X���-rc���[OOoUOUQ2Q2UOUQ2Q2UOUQ2Q2UOUQ2Q2UOUQ2Q2UOUQ2Q2UOUQ2Q	2UOU[	Q22Q2UOU[	Q22Q2UOUQ
2Q2UOUQ2Q
2UOU[	Q
22Q2UOU[	Q22Q
2P!)r�r�r�rQ�z^?r�z^Jr�z^@r�z!^Jr�z!A)rr�r�r�r�)rr�s& rr��TestAscii.test_unctrlus)�����$�$��������c�*�������c�*�������c�*�������c�*��������.�������t�,�������t�,������C��)�3�/������D�	�*�D�1��������/��������.������F��,�e�4������F��,�d�3rr$)r�r�r�r�r�r�r�r�r�r�r�r�rms@rr�r�/s)����3�+2�Z7�4�.�4�4rr�c��,QNoUO2vq#[UPU2FD+vqEUOU]UPV4U]*
6H*
2J-	P!)rH)	rHzdolor sit amet,�consecteturzadipiscing elit,zsed do eiusmodztempor incididuntzut labore etzdolore magnazaliqua.)r��	enumerater�)r�r�r�r�r��lines&     rr)r)�sR��
�D�����J�D��T�%�4�[�)����
�
�1�a��5�t�D�1�H�}�5�6�7�*rc�X`�\sQsQsnQsQsQsQsQsQs	Qs
Q	sQ
sQs
UsP!)�TextboxTesti�c��[[OQ5UmQUOOmQUOOmQUOmQUOOm[Q2UOOm[OOUO2Um
P!))�speczutf-8�xr�r�)rvrl)rrr��mock_winr��return_valuer�r�r�r�r�r�r��textboxrcs&rr^�TextboxTest.setUp�s���!�v�}�}�5��
�+1��
�
���(�.6��
�
���+�!(��
�
��,0��
�
���(�*-�c�(��
�
���'��~�~�-�-�d�m�m�<��rc��UOO2[OO	UO2oUOO
O
2UOOO
]2UOUOP
2UOUO]2UOUO2UOO2P!)zTest textbox initialization.)
r��
reset_mockrr�r�r��assert_called_once_withr�r�r�r�r��lastcmd)r�tbs& r�	test_init�TextboxTest.test_init�s����
�
� � �"�
�^�^�
#�
#�D�M�M�
2���
�
���6�6�8��
�
���4�4�Q�7��������/��������+����"�*�*�%��
�
� � �"rc�\�UOO2UOO[	Q22UOO
O
[	Q22UOO[	Q22UOO
O
[	Q22UOO[	Q22UOO
O
[	Q22UOO2P!)z%Test inserting a printable character.r�r�r�)r�r�r�r�r�r��assert_called_withrcs&r�test_insert�TextboxTest.test_insert�s����
�
� � �"�������C��)��
�
���.�.�s�3�x�8�������C��)��
�
���.�.�s�3�x�8�������C��)��
�
���.�.�s�3�x�8��
�
� � �"rc��UOO2UOO[O
O2UOO[O2UOO[O
O2UOO2P!)zTest deleting a character.)	r�r�r�r�rr�r�
KEY_BACKSPACE�DELrcs&r�test_delete�TextboxTest.test_delete�sp���
�
� � �"�����������0������� 4� 4�5��������� 0� 0�1��
�
� � �"rc��UOO2UOO[O
2UOOO]]2UOO2P!)zTest moving the cursor left.)r�r�r�r�rrrr�r�rcs&r�test_move_left�TextboxTest.test_move_left��R���
�
� � �"���������0��
�
���-�-�a��3��
�
� � �"rc��UOO2UOO[O
2UOOO]]2UOO2P!)zTest moving the cursor right.)r�r�r�r�r�	KEY_RIGHTr�r�rcs&r�test_move_right�TextboxTest.test_move_right�sT���
�
� � �"������� 0� 0�1��
�
���-�-�a��3��
�
� � �"rc��UOO2UOO[O
2UOOO]]2UOO[O2UOOO]]2UOO2P!)z+Test moving the cursor left and then right.)	r�r�r�r�rrrr�r�r�rcs&r�test_move_left_and_right�$TextboxTest.test_move_left_and_right�s����
�
� � �"���������0��
�
���-�-�a��3������� 0� 0�1��
�
���-�-�a��3��
�
� � �"rc��UOO2UOO[O
2UOOO]]2UOO2P!)zTest moving the cursor up.)r�r�r�r�r�KEY_UPr�r�rcs&r�test_move_up�TextboxTest.test_move_up�sR���
�
� � �"�������
�
�.��
�
���-�-�a��3��
�
� � �"rc��UOO2UOO[O
2UOOO]]2UOO2P!)zTest moving the cursor down.)r�r�r�r�r�KEY_DOWNr�r�rcs&r�test_move_down�TextboxTest.test_move_down�r�r)r�r�)r�r�r�r�r^r�r�r�r�r�r�r�r�r�r�rms@rr�r��s7����	=�	#�	#�#�#�#�#�#�#�#rr��__main__)'r r]rIr�r:rQr
�
unittest.mockr�test.supportrrrrrrr	�test.support.import_helperr
r�curses.panel�ImportErrorrr%r-�environ�getr9rIrkr��TestCaser2ror�r)r�r��mainr$rr�<module>r�s_����	�
�
���#�&�&�&�5�
	���
�x�	 ��
�n��
���	��<���
�z�z�~�~�f����	�
���T��.�.�T�Y�.�=��D�F�	�������)�4�6�K(��"�"�K(�6�F�K(�\6!'��!�!�!'�HU4��!�!�U4�p8�"N#�(�#�#�N#�b�z���M�M�O���_>�	��	�s�E�E�E�E

Youez - 2016 - github.com/yon3zu
LinuXploit