3 Õì2ad ã@sªddlmZddlZddlmZddlmZddlZGdd„dƒZeƒZ Gdd„dƒZ e ƒZ Gd d „d ej ƒZ Gd d „d ej ƒZGd d„dej ƒZedkr¦ejdd�dS)é)Ú GrepDialogN)Úcaptured_stdout)ÚVarc@seZdZdd„ZdS)ÚDummy_searchenginecCs|jS)N)Ú_pat)Úself©rú./opt/alt/python36/lib64/python3.6/test_grep.pyÚgetpatszDummy_searchengine.getpatN)Ú__name__Ú __module__Ú __qualname__r rrrr rsrc@s,eZdZejZejZedƒZeZ dd„Z dS)Ú Dummy_grepFcCsdS)Nr)rrrr Úclose"szDummy_grep.closeN) r r r rÚgrep_itZ findfilesrZrecvarÚ searchengineÚenginerrrrr rs rc@s eZdZdS)Ú FindfilesTestN)r r r rrrr r(src@s$eZdZdd„Zdd„Zdd„ZdS)Ú Grep_itTestc CsF|tj_tƒ�}tjtj|ƒtƒWdQRX|jƒj dƒ}|j ƒ|S)NÚ ) ÚgreprrrrÚreÚcompileÚ__file__ÚgetvalueÚsplitÚpop)rÚpatÚsÚlinesrrr Úreport5s zGrep_itTest.reportcCsFdd}|j|ƒ}|jt|ƒdƒ|j||dƒ|j|ddƒdS)Nzxyz*éérézNo hits.)r Ú assertEqualÚlenÚassertIn)rrrrrr Ú test_unfound=s  zGrep_itTest.test_unfoundcCsfd}|j|ƒ}|jt|ƒdƒ|j||dƒ|jd|dƒ|jd|dƒ|j|djd ƒƒdS) Nz<""" !Changing this line will break Test_findfile.test_found!érzpy: 1:r#Ú2ééz(Hint:)r r$r%r&Z assertTrueÚ startswith)rrrrrr Ú test_foundDs zGrep_itTest.test_foundN)r r r r r'r-rrrr r0src@s eZdZdS)ÚDefault_commandTestN)r r r rrrr r.Osr.Ú__main__r")Ú verbosity)Z idlelib.greprZunittestZ test.supportrZidlelib.idle_test.mock_tkrrrrrrZTestCaserrr.r Úmainrrrr Ús