B 0‘cÐã@s²ddlmZddlZddlmZddlmZddlZddlZGdd„dƒZ e ƒZ Gdd„dƒZ e ƒZ Gd d „d ej ƒZGd d „d ej ƒZGd d„dej ƒZedkr®ejdddS)é)ÚgrepN)Úcaptured_stdout)ÚVarc@seZdZdd„ZdS)ÚDummy_searchenginecCs|jS)N)Ú_pat)Úself©rú@/opt/alt/python37/lib64/python3.7/idlelib/idle_test/test_grep.pyÚgetpatszDummy_searchengine.getpatN)Ú__name__Ú __module__Ú __qualname__r rrrr rsrc@s(eZdZejjZedƒZeZ dd„Z dS)Ú Dummy_grepFcCsdS)Nr)rrrr Úclose"szDummy_grep.closeN) r r r rZ GrepDialogÚgrep_itrZrecvarÚ searchengineÚenginerrrrr rsrc@sDeZdZedd„ƒZedd„ƒZdd„Zdd„Zd d „Zd d „Z d S)Ú FindfilesTestcCs"tj t¡|_tj |j¡|_dS)N)ÚosÚpathÚrealpathÚ__file__Údirname)Úclsrrr Ú setUpClass*szFindfilesTest.setUpClasscCs |`|`dS)N)rr)rrrr Ú tearDownClass/szFindfilesTest.tearDownClassc CsDtƒ}tt ddd¡ƒ}WdQRX| |g¡| d| ¡¡dS)NZ invaliddirz*.*FZinvalid)rÚlistrÚ findfilesÚ assertEqualÚassertInÚgetvalue)rÚsÚfilelistrrr Útest_invaliddir3s zFindfilesTest.test_invaliddircCsVtj}t ¡}t |j¡d}t|tj|dƒƒ}| tj  tj|¡|¡t |¡dS)Nz test_grep.pyF) rrrÚgetcwdÚchdirrrÚcurdirrÚjoin)rÚffZsave_cwdÚfilenamer"rrr Ú test_curdir9s zFindfilesTest.test_curdircCsÂtj}tj |jd¡}t||jddƒƒ}| t|ƒd¡| |j |¡|  ||¡t||jddƒƒ}|  t|ƒd¡|  |j |¡| ||¡t||jddƒƒ}|  t|ƒd¡|  |j |¡dS)Nz README.txtz*.pyFé z*.txtrzgrep.*) rrrrr'rÚ assertGreaterÚlenrrÚ assertNotInZassertNotEqualr)rr(Zreadmer"rrr Ú test_baseCs  zFindfilesTest.test_basecCsÌtj}tj |j¡}tj |d¡}d}t|||dƒƒ}t|ƒ}| |d¡|  ||¡|  |j |¡t|||dƒƒ}| t|ƒ|¡|  ||¡|  |j |¡tj |¡}t||ddƒƒ}|  |j |¡dS)Nzgrep.pyz*.pyFéT) rrrrrr'rr-r,rr.r)rr(ÚparentZgrepfileÚpatr"Z parent_sizerrr Ú test_recurseYs     zFindfilesTest.test_recurseN) r r r Ú classmethodrrr#r*r/r3rrrr r(s    rc@s$eZdZdd„Zdd„Zdd„ZdS)Ú Grep_itTestc CsF|tj_tƒ}t t |¡t¡WdQRX| ¡  d¡}|  ¡|S)NÚ ) Ú_greprrrrÚreÚcompilerr ÚsplitÚpop)rr2r!Úlinesrrr Úreport{s zGrep_itTest.reportcCsBd}| |¡}| t|ƒd¡| ||d¡| |dd¡dS)Nzxyz*xyz*xyz*xyz*xyz*xyz*xyz*érézNo hits.)r=rr-r)rr2r<rrr Ú test_unfoundƒs  zGrep_itTest.test_unfoundcCsfd}| |¡}| t|ƒd¡| ||d¡| d|d¡| d|d¡| |d d ¡¡dS) Nz<""" !Changing this line will break Test_findfile.test_found!érzpy: 1:r?Ú2ééz(Hint:)r=rr-rZ assertTrueÚ startswith)rr2r<rrr Ú test_foundŠs zGrep_itTest.test_foundN)r r r r=r@rFrrrr r5vsr5c@s eZdZdS)ÚDefault_commandTestN)r r r rrrr rG•srGÚ__main__r>)Ú verbosity)ZidlelibrZunittestZ test.supportrZidlelib.idle_test.mock_tkrrr8rrrr7ZTestCaserr5rGr Úmainrrrr Ús    N