HEX
Server: Apache
System: Linux zacp120.webway.host 4.18.0-553.50.1.lve.el8.x86_64 #1 SMP Thu Apr 17 19:10:24 UTC 2025 x86_64
User: govancoz (1003)
PHP: 8.3.26
Disabled: exec,system,passthru,shell_exec,proc_close,proc_open,dl,popen,show_source,posix_kill,posix_mkfifo,posix_getpwuid,posix_setpgid,posix_setsid,posix_setuid,posix_setgid,posix_seteuid,posix_setegid,posix_uname
Upload Files
File: //usr/local/lib/python3.10/idlelib/idle_test/__pycache__/test_searchengine.cpython-310.pyc
o

�iD-�@sdZddlmZddlZddlmZmZmZddlm	Z	ddl
mZmZddl
m
ZddlZdd	�Zd
d�ZGdd
�d
�ZGdd�dej�ZGdd�dej�ZGdd�dej�ZGdd�dej�ZGdd�dej�ZGdd�dej�ZGdd�dej�Zedkr�ejdd�dSdS)z Test searchengine, coverage 99%.�)�searchengineN)�
BooleanVar�	StringVar�TclError)�
messagebox)�Var�Mbox)�TextcCstt_tt_tt_dS�N)r�serrrr�rr�@/usr/local/lib/python3.10/idlelib/idle_test/test_searchengine.py�setUpModule�
rcCstt_tt_tt_dSr
)rrrrrrrr
�tearDownModulerrc@�eZdZdd�ZdS)�MockcOsdSr
r)�self�args�kwargsrrr
�__init__ �z
Mock.__init__N)�__name__�
__module__�__qualname__rrrrr
rsrc@r)�GetTestcCs`tj}tt_z%t�}t�|�}|�|tj�|�|j|�|�t�|�|�W|t_dS|t_wr
)r�SearchEnginer�getZassertIsInstanceZassertIsZ
_searchengine)rZsaved_Engine�root�enginerrr
�test_get$s
zGetTest.test_getN)rrrr rrrr
r"�rc@r)�GetLineColTestcCsH|�t�d�d�|�t�d�d�|�ttjd�|�ttjd�dS)N�1.0)�rz1.11)r$�z1.0 lineend�end)�assertEqualrZget_line_colZassertRaises�
ValueError�rrrr
�test_get_line_col2sz GetLineColTest.test_get_line_colN)rrrr*rrrr
r"0r!r"c@r)�GetSelectionTestcCsVt�}|�dd�dd�}||_|�t�|�d�dd�}||_|�t�|�d�dS)	Nr#zHello World!cS�|dkrdS|dkrdSt�)N�	sel.firstr#�sel.last�1.12�r��srrr
�selLsz0GetSelectionTest.test_get_selection.<locals>.sel)r#r/cS�|dkrdSt��N�insert�1.5r0r1rrr
�markT�z1GetSelectionTest.test_get_selection.<locals>.mark)r7r7)�mockTextr6�indexr'rZ
get_selection)r�textr3r8rrr
�test_get_selectionFsz#GetSelectionTest.test_get_selectionN)rrrr=rrrr
r+9s
r+c@r)�ReverseSearchTestcCs�|j}d}t�d�}|t�||t|����d�|t�||d���d�|t�||d���d�|t�||d���d�|t�||d�d�dS)	NzHere is an 'is' test text.�is)��rA�
)��rD�)r'�re�compilerZsearch_reverse�len�span)r�Equal�line�progrrr
�test_search_reverse^s
z%ReverseSearchTest.test_search_reverseN)rrrrMrrrr
r>\r!r>c@s<eZdZdd�Zdd�Zdd�Zdd�Zd	d
�Zdd�Zd
S)�SearchEngineTestcCstjdd�|_dS)N)r)rrrr)rrr
�setUplszSearchEngineTest.setUpcCs�|j}|j}||��d�|�d�||��d�||��d�|j�d�||��d�||��d�|j�d�||��d�||�	�d�|j
�d�||�	�d�||��d�|j�d�||��d�||�
�d�|j�d�||�
�d�dS)N��helloFr$Tr)rr'�getpat�setpatZisre�revar�setZiscase�casevarZisword�wordvarZiswrap�wrapvarZisback�backvar�rrrJrrr
�test_is_getqs(
zSearchEngineTest.test_is_getcCsJ|j}|�d�|�|��d�|j�d�|�d�|�|��d�dS)N�\sr$�\\s)rZsetcookedpatr'rRrTrU)rrrrr
�test_setcookedpat�s

z"SearchEngineTest.test_setcookedpatcCs�|j}|j}||��d�|�d�||��d�|j�d�||��d�|j�d�|�d�||��d�|j�d�||��d�dS)NrPrQTz	\bhello\bFr\r])rr'ZgetcookedpatrSrWrUrTrZrrr
�test_getcookedpat�s

z"SearchEngineTest.test_getcookedpatcCs�|j}|j}|�d�|��}||jt�dtj�j�|j�	d�|��}||jt�d�jd�|�d�||��d�|t
jjd�|�d�|j
�	d�||��d�|t
jjd�dS)NZHellor$rrPzError: Empty regular expression�+z-Error: nothing to repeat
Pattern: +
Offset: 0)rr'rSZgetprog�patternrFrG�
IGNORECASErVrUr�	showerror�messagerT)rrrJZtemppatrrr
�test_getprog�s&

�
�zSearchEngineTest.test_getprogcCs�tj}|j}d}d}||j�||�d�||jd�d|d}||j|�||j�||d�d�||jd�|d7}||j|�dS)Nz[a-zz$unexpected end of regular expressionzRegular expression errorzError: z
Pattern: [a-zrCz

Offset: 5)rrcr'rZreport_error�titlerd)rrcrJ�pat�msgZexpected_messagerrr
�test_report_error�sz"SearchEngineTest.test_report_errorN)	rrrrOr[r^r_rerirrrr
rNisrNc@s eZdZedd��Zdd�ZdS)�
SearchTestcCsNt�|_d}|j�d|�t�d�|_t�d�|_dd�|j_	dd�|j_
dS)N�&First line
Line with target
Last line
r#�targetcW�d|fS)N�fr�rrrr
�<lambda>��z'SearchTest.setUpClass.<locals>.<lambda>cWrm)N�brrorrr
rp�rq)r:r<r6rFrGrgrrr�search_forward�search_backward��clsZ	test_textrrr
�
setUpClass�s�zSearchTest.setUpClassc	Csx|j}|j}|j}|j}|j}|j�d�|||�d�dd�}||_||||�d||ddddff�|j�d�||||�d||ddddff�|j�d�|j	�d�||||�d||ddddff�|j	�d�d	d
�}||_||||�d||ddddff�||||d�d||dd
ddff�|j	�d�||||�d||dd
ddff�||||d�d||ddddff�dS)NcSr4r5r0r1rrr
r8�r9z$SearchTest.test_search.<locals>.markrnr$rCTFrrcSr,)Nr-z2.10r.z2.16r0r1rrr
r3�sz#SearchTest.test_search.<locals>.sel���
)
r'rZsearch_textr<rgZpatvarrUr;rXrY)rrJr�searchr<rgr8r3rrr
�test_search�s.    " &zSearchTest.test_searchN)rrr�classmethodrwr|rrrr
rj�s
rjc@s0eZdZedd��Zdd�Zdd�Zdd�Zd	S)
�ForwardBackwardTestcCs`t�d�|_t�|_dd�|j_d}|j�d|�t�d�|_	d|_
t�d�|_t�d�|_dS)	NcSsdS)Nz4.0r)r;rrr
rprz0ForwardBackwardTest.setUpClass.<locals>.<lambda>rkr#rl)rx)rzryZxyzz\w*)
rrrr:r<r;r6rFrGrg�res�failpat�emptypatrurrr
rws�zForwardBackwardTest.setUpClasscsd��fdd�	}|S)Nrcs0��j|||||�}|r|d|d��fS|S)Nrr$)r<rI)rgrK�col�wrap�okr��funcrrr
r{#sz/ForwardBackwardTest.make_search.<locals>.search)rr)rr�r{rr�r
�make_search"szForwardBackwardTest.make_searchcCs�|j}|�|jj�}|j}|||ddd�|j�|||ddd�|j�|||ddd�d�|||ddd�|j�|||jddd�d�|||jddddd	�d
�|||jddd�|j�dS)Nr$rT�Frxrz�	�r��rx)r�r�)r'r�rrsrgrr�r�)rrJZforwardrgrrr
�test_search_forward)sz'ForwardBackwardTest.test_search_forwardcCs�|j}|�|jj�}|j}|||ddd�|j�|||ddd�|j�|||ddd�d�|||ddd�|j�|||jddd�d�|||jdd	ddd
�d�|||jddd�d�dS)
Nr�rCTrxrFryr�rzr�r�)rx)rCr�)r'r�rrtrgrr�r�)rrJZbackwardrgrrr
�test_search_backward:sz(ForwardBackwardTest.test_search_backwardN)rrrr}rwr�r�r�rrrr
r~s
r~�__main__rx)�	verbosity)�__doc__ZidlelibrrZunittest�tkinterrrrrZidlelib.idle_test.mock_tkrrr	r:rFrrrZTestCaserr"r+r>rNrjr~r�mainrrrr
�<module>s*	#
b=C�