Your IP : 216.73.216.196


Current Path : /opt/alt/python310/lib64/python3.10/idlelib/idle_test/__pycache__/
Upload File :
Current File : //opt/alt/python310/lib64/python3.10/idlelib/idle_test/__pycache__/test_parenmatch.cpython-310.pyc

o

0�i�
�@s�dZddlmZddlmZed�ddlZddlmZddlm	Z	m
Z
Gdd	�d	�ZGd
d�dej�Z
edkr@ejd
d�dSdS)z�Test parenmatch, coverage 91%.

This must currently be a gui test because ParenMatch methods use
several text methods not defined on idlelib.idle_test.mock_tk.Text.
�)�
ParenMatch)�requiresZguiN)�Mock)�Tk�Textc@seZdZdd�ZdS)�DummyEditwincCs||_d|_d|_d|_dS)N�z>>>)�textZindentwidthZtabwidthZprompt_last_line)�selfr	�r�H/opt/alt/python310/lib64/python3.10/idlelib/idle_test/test_parenmatch.py�__init__s
zDummyEditwin.__init__N)�__name__�
__module__�__qualname__r
rrrrrsrc@sLeZdZedd��Zedd��Zdd�Zdd�Zd	d
�Zdd�Z	d
d�Z
dS)�ParenMatchTestcCs8t�|_|j��t|j�|_t|j�|_t�|j_dS�N)	r�rootZwithdrawrr	r�editwinrZ
text_frame��clsrrr�
setUpClasss

zParenMatchTest.setUpClasscCs$|`|`|j��|j��|`dSr)r	rrZupdate_idletasksZdestroyrrrr�
tearDownClass!s

zParenMatchTest.tearDownClasscCs|j�dd�dS)N�1.0�end)r	�delete)r
rrr�tearDown(szParenMatchTest.tearDowncCst|j�}dd�|_|S)NcSsdSrrrrrr�<lambda>-sz/ParenMatchTest.get_parenmatch.<locals>.<lambda>)rrZbell�r
�pmrrr�get_parenmatch+s

zParenMatchTest.get_parenmatchc	Cs|j}|��}dD]z\}}}|j|d��g|�dd�||_|�dd�|�d�|�d|���|d	kr?|�	|�
d
d�d�|�	|�d
d�|�|�dd�|��|�
d|���|�|�d
d�d
�|�d�|�	|�d
d�|�Wd�n1s~wYq	dS)z2
        Test ParenMatch with each style.
        ))Zopener��1.10z1.11r!)�defaultr!r!)�parens)z1.14�1.15)r%�1.16)Z
expression)r"r%)r"r&)�stylerr�insertzdef foobar(a, b�eventz<<parenmatch-check-restore>>r$Zparenr!�)rN)r	r ZsubTestrZSTYLEr(�flash_paren_eventZassertInZ
event_infoZassertTupleEqualZ
tag_nextrangeZ
tag_prevrange�
restore_eventZassertNotInZassertEqual�paren_closed_event)r
r	rr'Zrange1Zrange2rrr�test_paren_styles0s:
���
����z ParenMatchTest.test_paren_stylescCs^|j}|��}|�dd�|�d�|�dd�|�d�|�d�|�dd�|�d�dS)z�
        Test corner cases in flash_paren_event and paren_closed_event.

        Force execution of conditional expressions and alternate paths.
        r(z# Comment.)r)z
defz	 a, *arg)N)r	r r(r-r+)r
r	rrrr�test_paren_cornerRs


z ParenMatchTest.test_paren_cornercCsN|��}t�|_|�d�|�|jj�|j��|�d�|�|jj�dS)Nr�)r rr,Zhandle_restore_timerZ
assertTrueZcalledZ
reset_mockZassertFalserrrr�test_handle_restore_timeres


z(ParenMatchTest.test_handle_restore_timerN)rrr�classmethodrrrr r.r/r1rrrrrs

"r�__main__�)�	verbosity)�__doc__Zidlelib.parenmatchrZtest.supportrZunittestZ
unittest.mockrZtkinterrrrZTestCaserr�mainrrrr�<module>sX�