Viewing File: /opt/alt/python35/lib64/python3.5/idlelib/idle_test/__pycache__/test_replacedialog.cpython-35.pyc



©ÕYfp ã@sËdZddlmZedƒddlZddlmZddlmZmZddl	m
Z
ddljZ
ddljZe
jZe
jZGdd	„d	ejƒZed
krÇejddƒdS)
z"Unittest for idlelib.ReplaceDialogé)ÚrequiresZguiN)ÚMock)ÚTkÚText)ÚMboxc@s¬eZdZedd„ƒZedd„ƒZdd„Zdd„Zd	d
„Zdd„Z	d
d„Z
dd„Zdd„Zdd„Z
dd„Zdd„ZdS)ÚReplaceDialogTestcCs¤tƒ|_|jjƒtt_tj|jƒ|_tj	|j|jƒ|_
tƒ|j
_t
|jƒ|_tƒ|j_tƒ|j_|j|j
_dS)N)rÚrootZwithdrawrÚseÚtkMessageBoxÚSearchEngineÚengineÚrdÚ
ReplaceDialogÚdialogrÚokrÚtextZundo_block_startZundo_block_stop)Úcls©rúI/opt/alt/python35/lib64/python3.5/idlelib/idle_test/test_replacedialog.pyÚ
setUpClasss
	zReplaceDialogTest.setUpClasscCs2tt_|`|`|`|jjƒ|`dS)N)Ú	orig_mboxr	r
rrrrZdestroy)rrrrÚ
tearDownClasss	
zReplaceDialogTest.tearDownClasscCs|jjddƒdS)NÚinsertzThis is a sample sTring)rr)ÚselfrrrÚsetUp&szReplaceDialogTest.setUpcCs®|jjjdƒ|jjjdƒ|jjjdƒ|jjjdƒ|jjjdƒ|jjjdƒ|jj	jdƒdt
_dt
_|j
jddƒdS)NÚFTz1.0Úend)rÚpatvarÚsetrÚreplvarÚwordvarÚcasevarÚrevarÚwrapvarÚbackvarÚ	showerrorÚtitleÚmessagerZdelete)rrrrÚtearDown)s		zReplaceDialogTest.tearDowncCs¹|j}|j}|jj}|jj}|jj}|jjdƒ||jjƒ|j	ƒƒ|j
dƒ|j
dƒ|jj|jƒ|ƒ||j	ddƒdƒ|jddƒ|j
dƒ|j
dƒ|ƒ||j	d	d
ƒdƒ|j
dƒ|j
dƒ|ƒ||j	d
dƒdƒ|jddƒ|j
ddƒ|j	ddƒ}|j
dƒ|ƒ|j	ddƒ}|||ƒ|jddƒ|j
dƒ|j
dƒ|ƒ||j	dƒdƒ||j	dƒdƒ|ƒ||j	dƒdƒ||j	dƒdƒ|j	ddƒ}|ƒ|j	ddƒ}|||ƒ|j	ddƒ}|j
dƒ|ƒ|j	ddƒ}|||ƒ|jjdƒdS)NZasdfÚaz1.8z1.12rz1.0ÚisÚhelloz1.2z1.7ÚstringZworldz1.23z1.28rz
line42:z
[a-z][\d]+z1.9ÚiÚjz2.1Úfoobarr)rÚassertEqualrrrrÚ
replace_itZsetpatZgetpatÚgetrÚopenÚmark_setrZfind_it)rrÚequalÚpvÚrvÚreplaceÚbefore_textÚ
after_textrrrÚtest_replace_simple5s^		












z%ReplaceDialogTest.test_replace_simplecCsO|j}|j}|jj}|jj}|jj}|jjjdƒ|j	ddƒ|jdƒ|jdƒ|ƒ||j
dƒdƒ||j
dƒdƒ|ƒ||j
dƒdƒ||j
dƒdƒ|ƒ||j
dƒdƒ|j	dd	ƒ|jd
ƒ|j
ddƒ}|ƒ|j
ddƒ}|||ƒdS)
NFrz1.4r-r.z1.2z1.5z1.20z1.8r*z1.0r)rr0rrrrr1r#rr4r2)rrr5r6r7r8r9r:rrrÚtest_replace_wrap_around|s.		


z*ReplaceDialogTest.test_replace_wrap_aroundcCs |j}|j}|jj}|jj}|jj}|jjjdƒ|jdƒ|jdƒ|ƒ||j	ddƒdƒ||j	ddƒdƒdS)	NTr*r+z1.0z1.4ÚThisz1.5z1.10)
rr0rrrrr1r rr2)rrr5r6r7r8rrrÚtest_replace_whole_word™s		

z)ReplaceDialogTest.test_replace_whole_wordcCsÒ|j}|j}|jj}|jj}|jj}|jjjdƒ|jj	ddƒ}|jdƒ|jdƒ|ƒ|jj	ddƒ}|||ƒ|jdƒ|ƒ||j	ddƒdƒdS)NTz1.0rÚthisÚthatr=z1.4)
r0rrrrrr1r!rr2)rr5rr6r7r8r9r:rrrÚtest_replace_match_case§s		



z)ReplaceDialogTest.test_replace_match_casecCs¿|j}|j}|jj}|jj}|jj}|jjjdƒ|j	ddƒ}|jdƒ|jdƒ|ƒ|j	ddƒ}|||ƒ|j
ddƒ|ƒ||j	dd	ƒd
ƒ|jdƒ|ƒ|jdtj
ƒ|jd
tjƒ|jdƒ|ƒ|jdtj
ƒ|jdtjƒdt_
dt_|jdƒ|jdƒ|ƒ|jdtj
ƒ|jdtjƒ|jjdƒ||j	ƒdƒdS)NTz1.0rz
[a-z][\d]+r+rz
line42z2.0z2.8ZlinhellorÚerrorÚEmptyz[\dÚPatternz[a]ztest\zInvalid Replace Expressionú'z\')r0rrrrrr1r"rr2rÚassertInr%r&r'Zsetcookedpat)rr5rr6r7r8r9r:rrrÚtest_replace_regexºs@		




		

z$ReplaceDialogTest.test_replace_regexcCsð|j}|j}|jj}|jj}|jj}|jjjdƒ|j	ddƒ|jdƒ|jdƒ|ƒ||j
ddƒdƒ||j
dd	ƒdƒ|ƒ||j
d
dƒdƒ|ƒ||j
dd
ƒdƒdS)NTrz
is as r*Úwasz1.2z1.4z2.0z2.3z1.5z1.8)r0rrrrrr1r$rrr2)rr5rr6r7r8rrrÚtest_replace_backwardsãs 		

z(ReplaceDialogTest.test_replace_backwardscCs@|j}|jj}|jj}|jj}|jddƒ|jd|jddƒdƒ|jdƒ|jdƒ|ƒ|j	d|jddƒƒ|jj
jdƒ|jd	ƒ|ƒ|jd
tj
ƒ|jdtjƒ|jdƒ|jd
ƒ|ƒ|jj
jdƒ|jdƒ|jdƒ|ƒdS)NrÚ
z1.0rédr*rHTrrBrCz[s][T]ú\Fztext which is not presentr/)rrrrrÚreplace_allrr2rZassertNotInr"rFr%r&r')rrr6r7rMrrrÚtest_replace_all÷s,	 






z"ReplaceDialogTest.test_replace_allcCs›|j}|jj}|jj}|jj}|j}|jdƒ|jdƒ|ƒ||jddƒdƒ|jj	jdƒ|jdƒ|ƒdS)Nr=rHz	sel.firstzsel.lastTr)
rrrrrZdefault_commandr0rr2r")rrr6r7Zreplace_findr5rrrÚtest_default_commands		


z&ReplaceDialogTest.test_default_commandN)Ú__name__Ú
__module__Ú__qualname__Úclassmethodrrrr(r;r<r>rArGrIrNrOrrrrrs
G)rÚ__main__Ú	verbosityé)Ú__doc__Ztest.supportrZunittestZ
unittest.mockrZtkinterrrZidlelib.idle_test.mock_tkrZidlelib.SearchEnginerr	Zidlelib.ReplaceDialogrr
r
rr%ZTestCaserrPÚmainrrrrÚ<module>s
		ÿ
Back to Directory File Manager