ž pyMaο,c@s’dZddlZddlZddlmZddlmZmZmZddl j Z ddl m ZddlmZmZddlmZdd „Zd d „ZGd d „d ƒZGdd„dejƒZGdd„dejƒZGdd„dejƒZGdd„dejƒZGdd„dejƒZGdd„dejƒZGdd„dejƒZedkrŽej ddddƒndS( u9Test functions and SearchEngine class in SearchEngine.py.iN(urequires(u BooleanVaru StringVaruTclError(u SearchEngine(uVaruMbox(uTextcCstt_tt_tt_dS(N(uVaruseu BooleanVaru StringVaruMboxu tkMessageBox(((uH/opt/alt/python33/lib64/python3.3/idlelib/idle_test/test_searchengine.pyu setUpModules  u setUpModulecCstt_tt_tt_dS(N(u BooleanVaruseu StringVaru tkMessageBox(((uH/opt/alt/python33/lib64/python3.3/idlelib/idle_test/test_searchengine.pyutearDownModules  utearDownModulecBs |EeZdZdd„ZdS(uMockcOsdS(N((uselfuargsukwargs((uH/opt/alt/python33/lib64/python3.3/idlelib/idle_test/test_searchengine.pyu__init__su Mock.__init__N(u__name__u __module__u __qualname__u__init__(u __locals__((uH/opt/alt/python33/lib64/python3.3/idlelib/idle_test/test_searchengine.pyuMocksuMockcBs |EeZdZdd„ZdS(uGetTestc Cs~tj}tt_z[tƒ}tj|ƒ}|j|tjƒ|j|j|ƒ|jtj|ƒ|ƒWd|t_XdS(N(useu SearchEngineuMockugetuassertIsInstanceuassertIsu _searchengine(uselfu saved_Engineurootuengine((uH/opt/alt/python33/lib64/python3.3/idlelib/idle_test/test_searchengine.pyutest_get#s   uGetTest.test_getN(u__name__u __module__u __qualname__utest_get(u __locals__((uH/opt/alt/python33/lib64/python3.3/idlelib/idle_test/test_searchengine.pyuGetTest!suGetTestcBs |EeZdZdd„ZdS(uGetLineColTestcCsb|jtjdƒdƒ|jtjdƒd ƒ|jttjdƒ|jttjdƒdS( Nu1.0iiu1.11i u 1.0 lineenduend(ii(ii (u assertEqualuseu get_line_colu assertRaisesu ValueError(uself((uH/opt/alt/python33/lib64/python3.3/idlelib/idle_test/test_searchengine.pyutest_get_line_col1su GetLineColTest.test_get_line_colN(u__name__u __module__u __qualname__utest_get_line_col(u __locals__((uH/opt/alt/python33/lib64/python3.3/idlelib/idle_test/test_searchengine.pyuGetLineColTest/suGetLineColTestcBs |EeZdZdd„ZdS(uGetSelectionTestcCsytƒ}|jddƒdd„}||_|jtj|ƒd ƒdd„}||_|jtj|ƒd ƒdS( Nu1.0u Hello World!cSs*|dkrdS|dkr dSt‚dS(Nu sel.firstu1.0usel.lastu1.12(uTclError(us((uH/opt/alt/python33/lib64/python3.3/idlelib/idle_test/test_searchengine.pyuselKs   u0GetSelectionTest.test_get_selection..selu1.12cSs|dkrdSt‚dS(Nuinsertu1.5(uTclError(us((uH/opt/alt/python33/lib64/python3.3/idlelib/idle_test/test_searchengine.pyumarkSs u1GetSelectionTest.test_get_selection..marku1.5(u1.0u1.12(u1.5u1.5(umockTextuinsertuindexu assertEqualuseu get_selection(uselfutextuselumark((uH/opt/alt/python33/lib64/python3.3/idlelib/idle_test/test_searchengine.pyutest_get_selectionEs     u#GetSelectionTest.test_get_selectionN(u__name__u __module__u __qualname__utest_get_selection(u __locals__((uH/opt/alt/python33/lib64/python3.3/idlelib/idle_test/test_searchengine.pyuGetSelectionTest8s uGetSelectionTestcBs |EeZdZdd„ZdS(uReverseSearchTestcCsΜ|j}d}tjdƒ}|tj||t|ƒƒjƒd ƒ|tj||dƒjƒd ƒ|tj||dƒjƒd ƒ|tj||dƒjƒd ƒ|tj||dƒdƒdS( NuHere is an 'is' test text.uisi ii iii(i i(i i(ii(ii(u assertEqualureucompileuseusearch_reverseulenuspanuNone(uselfuEqualulineuprog((uH/opt/alt/python33/lib64/python3.3/idlelib/idle_test/test_searchengine.pyutest_search_reverse]s ("""u%ReverseSearchTest.test_search_reverseN(u__name__u __module__u __qualname__utest_search_reverse(u __locals__((uH/opt/alt/python33/lib64/python3.3/idlelib/idle_test/test_searchengine.pyuReverseSearchTest[suReverseSearchTestcBs\|EeZdZdd„Zdd„Zdd„Zdd„Zd d „Zd d „Zd S(uSearchEngineTestcCstjddƒ|_dS(Nuroot(useu SearchEngineuNoneuengine(uself((uH/opt/alt/python33/lib64/python3.3/idlelib/idle_test/test_searchengine.pyusetUpksuSearchEngineTest.setUpcCsW|j}|j}||jƒdƒ|jdƒ||jƒdƒ||jƒdƒ|jjdƒ||jƒdƒ||j ƒdƒ|j jdƒ||j ƒdƒ||j ƒdƒ|j jdƒ||j ƒdƒ||j ƒdƒ|jjdƒ||j ƒdƒ||jƒdƒ|jjdƒ||jƒdƒdS(NuuhelloiiFT(uengineu assertEqualugetpatusetpatuisreuFalseurevarusetuTrueuiscaseucasevaruisworduwordvaruiswrapuwrapvaruisbackubackvar(uselfuengineuEqual((uH/opt/alt/python33/lib64/python3.3/idlelib/idle_test/test_searchengine.pyu test_is_getps(   uSearchEngineTest.test_is_getcCsc|j}|jdƒ|j|jƒdƒ|jjdƒ|jdƒ|j|jƒdƒdS(Nu\siu\\s(uengineu setcookedpatu assertEqualugetpaturevaruset(uselfuengine((uH/opt/alt/python33/lib64/python3.3/idlelib/idle_test/test_searchengine.pyutest_setcookedpatŒs    u"SearchEngineTest.test_setcookedpatcCsΏ|j}|j}||jƒdƒ|jdƒ||jƒdƒ|jjdƒ||jƒdƒ|jjdƒ|jdƒ||jƒdƒ|jjdƒ||jƒdƒdS(Nuuhellou \bhello\bu\su\\sTF( uengineu assertEqualu getcookedpatusetpatuwordvarusetuTrueuFalseurevar(uselfuengineuEqual((uH/opt/alt/python33/lib64/python3.3/idlelib/idle_test/test_searchengine.pyutest_getcookedpat”s    u"SearchEngineTest.test_getcookedpatcCsς|j}|j}|jdƒ|jƒ}||jtjdtjƒjƒ|jj dƒ|jƒ}||jtjdƒjdƒ|jdƒ||jƒdƒ|jdƒ|j j dƒ||jƒdƒ|jt j jdƒdS(NuHelloiiuu+u#Error: nothing to repeat Pattern: +(uengineu assertEqualusetpatugetprogupatternureucompileu IGNORECASEucasevarusetuNoneurevaruMboxu showerrorumessage(uselfuengineuEqualutemppat((uH/opt/alt/python33/lib64/python3.3/idlelib/idle_test/test_searchengine.pyu test_getprog€s    "   uSearchEngineTest.test_getprogcCs΅tj}|j}d}d}||jj||ƒdƒ||jdƒd|d}||j|ƒ||jj||dƒdƒ||jdƒ|d7}||j|ƒdS(Nu[a-zu$unexpected end of regular expressionuRegular expression erroruError: u Pattern: [a-ziu Offset: 5(uMboxu showerroru assertEqualuengineu report_erroruNoneutitleumessage(uselfu showerroruEqualupatumsguexpected_message((uH/opt/alt/python33/lib64/python3.3/idlelib/idle_test/test_searchengine.pyutest_report_error·s   u"SearchEngineTest.test_report_errorN( u__name__u __module__u __qualname__usetUpu test_is_getutest_setcookedpatutest_getcookedpatu test_getprogutest_report_error(u __locals__((uH/opt/alt/python33/lib64/python3.3/idlelib/idle_test/test_searchengine.pyuSearchEngineTesths      uSearchEngineTestcBs2|EeZdZedd„ƒZdd„ZdS(u SearchTestcCsqtƒ|_d}|jjd|ƒtjdƒ|_tjdƒ|_ dd„|j _ dd„|j _ dS(Nu&First line Line with target Last line u1.0utargetcWs d|fS(Nuf((uargs((uH/opt/alt/python33/lib64/python3.3/idlelib/idle_test/test_searchengine.pyuΩsu'SearchTest.setUpClass..cWs d|fS(Nub((uargs((uH/opt/alt/python33/lib64/python3.3/idlelib/idle_test/test_searchengine.pyuΪs( umockTextutextuinsertureucompileupatuseu SearchEngineuNoneuengineusearch_forwardusearch_backward(uclsu test_text((uH/opt/alt/python33/lib64/python3.3/idlelib/idle_test/test_searchengine.pyu setUpClassΛs uSearchTest.setUpClassc Cs|j}|j}|j}|j}|j}|jjdƒ|||ƒdƒdd„}||_||||ƒd||ddd d ffƒ|j jd ƒ||||ƒd||ddd d ffƒ|j jd ƒ|j jd ƒ||||ƒd||ddd d ffƒ|j jd ƒdd„}||_||||ƒd||d d d d ffƒ||||d ƒd||d d d d ffƒ|j jd ƒ||||ƒd||d d d d ffƒ||||d ƒd||d d d d ffƒdS(NcSs|dkrdSt‚dS(Nuinsertu1.5(uTclError(us((uH/opt/alt/python33/lib64/python3.3/idlelib/idle_test/test_searchengine.pyumarkμs u$SearchTest.test_search..markufiiubcSs*|dkrdS|dkr dSt‚dS(Nu sel.firstu2.10usel.lastu2.16(uTclError(us((uH/opt/alt/python33/lib64/python3.3/idlelib/idle_test/test_searchengine.pyuselωs   u#SearchTest.test_search..seliii TF( u assertEqualuengineu search_textutextupatupatvarusetuNoneuindexuTrueuFalseuwrapvarubackvar(uselfuEqualuengineusearchutextupatumarkusel((uH/opt/alt/python33/lib64/python3.3/idlelib/idle_test/test_searchengine.pyu test_searchαs.       ...  .1.uSearchTest.test_searchN(u__name__u __module__u __qualname__u classmethodu setUpClassu test_search(u __locals__((uH/opt/alt/python33/lib64/python3.3/idlelib/idle_test/test_searchengine.pyu SearchTestΘsu SearchTestcBsJ|EeZdZedd„ƒZdd„Zdd„Zdd„Zd S( uForwardBackwardTestcCsŒtjdƒ|_tƒ|_dd„|j_d}|jjd|ƒtj dƒ|_ d |_ tj d ƒ|_ tj d ƒ|_ dS( NcSsdS(Nu4.0((uindex((uH/opt/alt/python33/lib64/python3.3/idlelib/idle_test/test_searchengine.pyusu0ForwardBackwardTest.setUpClass..u&First line Line with target Last line u1.0utargetii iuxyzu\w*(i i(i(i i(useu SearchEngineuNoneuengineumockTextutextuindexuinsertureucompileupaturesufailpatuemptypat(uclsu test_text((uH/opt/alt/python33/lib64/python3.3/idlelib/idle_test/test_searchengine.pyu setUpClass s  uForwardBackwardTest.setUpClasscsd‡‡fdd†}|S(Nics@ˆˆj|||||ƒ}|r<|d|djƒfS|S(Nii(utextuspan(upatulineucoluwrapuokures(ufuncuself(uH/opt/alt/python33/lib64/python3.3/idlelib/idle_test/test_searchengine.pyusearch su/ForwardBackwardTest.make_search..search((uselfufuncusearch((ufuncuselfuH/opt/alt/python33/lib64/python3.3/idlelib/idle_test/test_searchengine.pyu make_searchsuForwardBackwardTest.make_searchcCs |j}|j|jjƒ}|j}|||dddƒ|jƒ|||dddƒ|jƒ|||ddd ƒdƒ|||ddd ƒ|jƒ|||j dddƒdƒ|||j dddddƒd ƒ|||j dddƒ|jƒdS( Niiiii i uokTF(i i (i(i i ( u assertEqualu make_searchuengineusearch_forwardupatuTrueuresuFalseuNoneufailpatuemptypat(uselfuEqualuforwardupat((uH/opt/alt/python33/lib64/python3.3/idlelib/idle_test/test_searchengine.pyutest_search_forward&s  %u'ForwardBackwardTest.test_search_forwardcCs|j}|j|jjƒ}|j}|||ddd ƒ|jƒ|||ddd ƒ|jƒ|||ddd ƒdƒ|||ddd ƒ|jƒ|||j ddd ƒdƒ|||j ddd dd ƒd ƒ|||j ddd ƒdƒdS(Niiiiii i uokTF(i i (i(i i (ii (i(ii ( u assertEqualu make_searchuengineusearch_backwardupatuTrueuresuFalseuNoneufailpatuemptypat(uselfuEqualubackwardupat((uH/opt/alt/python33/lib64/python3.3/idlelib/idle_test/test_searchengine.pyutest_search_backward7s  %u(ForwardBackwardTest.test_search_backwardN(u__name__u __module__u __qualname__u classmethodu setUpClassu make_searchutest_search_forwardutest_search_backward(u __locals__((uH/opt/alt/python33/lib64/python3.3/idlelib/idle_test/test_searchengine.pyuForwardBackwardTests  uForwardBackwardTestu__main__u verbosityiuexit(!u__doc__ureuunittestu test.supporturequiresutkinteru BooleanVaru StringVaruTclErrorutkinter.messageboxu messageboxu tkMessageBoxuidlelibu SearchEngineuseuidlelib.idle_test.mock_tkuVaruMboxuTextumockTextu setUpModuleutearDownModuleuMockuTestCaseuGetTestuGetLineColTestuGetSelectionTestuReverseSearchTestuSearchEngineTestu SearchTestuForwardBackwardTestu__name__umain(((uH/opt/alt/python33/lib64/python3.3/idlelib/idle_test/test_searchengine.pyus(     # `=C