B  f<\@s@dZddlmZddlZddlmZddlmZddlm Z m Z ddl m Z ddl mZGd d d ejZGd d d ejZGd ddejZGdddejZGdddejZGdddZGdddZGdddejZGdddZGdddejZGdddejZGdd d ejZed!kr b: return a elif a < b: return b else: return None cCsr|jj}|j}|j}|dddddddg}||ddd||f|ddd ||d d dddgfdS) Nrkz7.0z10.0r z def compare(self):z if a > b: z1.0r%z15.0z16.0)rc get_regionrrrljoin tag_remove)r rgreqZexpected_linesrrrtest_get_regionsz FormatRegionTest.test_get_regionc Cs&|jj}|j}|j}|j}t|_|jd}|jd}| ddd|j \}}} } |||| | |j || dd| || dd| | ddd d } | d } |d d | | || dd| || d d| || dd||| dd|| ddd ||_dS)Nr< rkz6.0z11.0z sel.firstzsel.lastz1.0r%zadded line 1 r{z7.0z10.0z7.0-1cz12.0-1c)rc set_regionrrZbellrrvrx splitlinesrlr|Zassert_called_oncergr~r*) r Zset_rrZ save_bellZline6Zline10headtailcharslinesZ newstringnewlinesrrrtest_set_regions.   z FormatRegionTest.test_set_regioncCs>|jj}|j}|j}|ddd|||ddddS)Nrkz7.0z10.0z2 def compare(self): if a > b: )rcZindent_region_eventrrrlrg)r indentrrrrrtest_indent_region_events z)FormatRegionTest.test_indent_region_eventcCs>|jj}|j}|j}|ddd|||ddddS)Nrkz7.0z10.0z" def compare(self): if a > b: )rcZdedent_region_eventrrrlrg)r dedentrrrrrtest_dedent_region_events z)FormatRegionTest.test_dedent_region_eventcCs>|jj}|j}|j}|ddd|||ddddS)Nrkz7.0z10.0z0## ## def compare(self): ## if a > b: )rccomment_region_eventrrrlrg)r r:rrrrrtest_comment_region_events z*FormatRegionTest.test_comment_region_eventcCs|jj}|jj}|j}|j}|ddd||||ddd|ddd|ddd|||dd d |jddd d d g|||dd d dS)Nrkz7.0z10.0z* def compare(self): if a > b: z1.0r%z3.0z4.0z3.endz # Class comment.r z# Class comment.z Class comment.) rcrZuncomment_region_eventrrrlrgr~r)r r:Z uncommentrrrrrtest_uncomment_region_eventsz,FormatRegionTest.test_uncomment_region_event _asktabwidthcCs\|jj}|j}|j}|dddd|_||d|_||||ddddS)Nrkz7.0z10.0r0z$ def compare(self): if a > b: ) rctabify_region_eventrrrl return_value assertIsNoneassertIsNotNonerg)r rZtabifyrrrrrtest_tabify_region_events  z)FormatRegionTest.test_tabify_region_eventcCsl|jj}|j}|j}|dddd|_||d|_|jd|_|||| ddddS)Nrkz7.0z10.0r$r0z0 def compare(self): if a > b: ) rcZuntabify_region_eventrrrlrrrrrg)r rZuntabifyrrrrrtest_untabify_region_event)s   z+FormatRegionTest.test_untabify_region_event askintegercCs |jj}d|_||ddS)N )rcrrr)r rZaskrrrtest_ask_tabwidth:sz"FormatRegionTest.test_ask_tabwidthN)rrrrBr!rfryrzrxrrrrrrrpatchobjectr rwrrrrrrrrus #   ruc@s8eZdZejedddZejedddZdS) IndentsTestaskyesnocCsjtdd}t|}d|_|d||jd||jd|d||jd||jddS)NTF)rrr IndentsrZtoggle_tabs_eventrrtrs)r rrPindentsrrrtest_toggle_tabsCs    zIndentsTest.test_toggle_tabsrcCsxtdd}t|}d|_|d||jdd|_|d||jdd|_d|_|d||jddS)Nr2r0r<T)rrr rrZchange_indentwidth_eventrrsrt)r rrPrrrrtest_change_indentwidthQs     z#IndentsTest.test_change_indentwidthN) rrrrrrr rrrrrrrAsrc@s<eZdZeddZeddZddZddZd d Zd S) RstripTestcCsHtdt|_|jt|j|_t|jd|_t |jj |_ dS)Nra)r) rrr^rbrr MockEditorrPr ZRstrip do_rstrip)r rrrr!fs   zRstripTest.setUpClasscCs(|`|`|`|j|j|`dS)N)rrrPr^rdre)r rrrrfos   zRstripTest.tearDownClasscCs|jdddS)Nz1.0zend-1c)rr+)r rrrrzvszRstripTest.tearDowncCs8d}d}|jd||||jdd|dS)NzLine with an ending tab Line ending in 5 spaces Linewithnospaces indented line indented line with trailing space zyLine with an ending tab Line ending in 5 spaces Linewithnospaces indented line indented line with trailing space z1.0r&)rr&rrrg)r Zoriginalstrippedrrrtest_rstrip_linesys zRstripTest.test_rstrip_linesc Cs|j}xLdD]D}|j|d.|d||||dddWdQRXq WxXdD]P}|j|d:|dd|d||||dddWdQRXqZWdS)N)r r{z )codez1.0zend-1cr )za za za za )rZsubTestr&rrrgr+)r rrrrrtest_rstrip_ends  "   zRstripTest.test_rstrip_endN) rrrrBr!rfrzrrrrrrrds  r__main__r$) verbosityexit)rZidlelibrr ZunittestrZ test.supportrZtkinterrrZidlelib.editorrZidlelib.idle_test.mock_idlerrZTestCaser rrCrKrOrUr`rrrurrrmainrrrrs.     w 9#7