JFIFxxC      C  " }!1AQa"q2#BR$3br %&'()*456789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz w!1AQaq"2B #3RbrJFIFxxC      C  " }!1AQa"q2#BR$3br %&'()*456789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz w!1AQaq"2B #3Rbr e f @sdZddlZddlmZddlmZddlmZmZddl m Z GdddZ Gd d d ej Z ed krejd d ndS)zTest idlelib.ParenMatch.N)Mock)requires)TkText) ParenMatchc@seZdZddZdS) DummyEditwincCs(||_d|_d|_d|_dS)NT)textZ indentwidthZtabwidthZcontext_use_ps1)selfr r F/opt/alt/python34/lib64/python3.4/idlelib/idle_test/test_parenmatch.py__init__ s   zDummyEditwin.__init__N)__name__ __module__ __qualname__r r r r r r s rc@speZdZeddZeddZddZddZd d Zd d Z d dZ dS)ParenMatchTestcCsMtdt|_t|j|_t|j|_t|j_dS)NZgui) rrrootrr reditwinrZ text_frame)clsr r r setUpClasss   zParenMatchTest.setUpClasscCs#|`|`|jj|`dS)N)r rrZdestroy)rr r r tearDownClasss  zParenMatchTest.tearDownClasscCs|jjdddS)Nz1.0end)r Zdelete)r r r r tearDown#szParenMatchTest.tearDowncCs|j}t|j}|jd|jdd|jd|jd|j|j|j ddd |jdd |j |j d|j|j |j ddf|j d|j|j dddd S)z: Test ParenMatch with 'expression' style. Z expressioninsertzdef foobar(a, beventz<>parenr1.101.15)1.16N)rr)rr)r rr set_stylerflash_paren_eventassertIn event_infoassertTupleEqual tag_prevrange restore_event assertNotIn assertEqualparen_closed_event)r r pmr r r test_paren_expression&s     z$ParenMatchTest.test_paren_expressioncCs|j}t|j}|jd|jdd|jd|jd|j|j|j ddd |jdd |j |j d|j|j |j ddfd S) z7 Test ParenMatch with 'default' style. defaultrzdef foobar(a, brz<>rr1.101.11rN)r-r.) r rrr rr!r"r#r$r%r&r'r()r r r*r r r test_paren_default=s    z!ParenMatchTest.test_paren_defaultcCs|j}t|j}|jdd|j|jd|jdd|j|jd|j|jd|jdd|j|jddS)z Test corner cases in flash_paren_event and paren_closed_event. These cases force conditional expression and alternate paths. rz# this is a commen)rz defz a, *arg)N)r rrrZ assertIsNoner)r!)r r r*r r r test_paren_cornerOs z ParenMatchTest.test_paren_cornercCslt|j}t|_|jd|j|jj|jj|jd|j|jjdS)Nr) rrrr&Zhandle_restore_timerZ assertTrueZcalledZ reset_mockZ assertFalse)r r*r r r test_handle_restore_timerbs    z(ParenMatchTest.test_handle_restore_timerN) rrr classmethodrrrr+r/r0r2r r r r rs     r__main__ verbosity)__doc__ZunittestZ unittest.mockrZ test.supportrZtkinterrrZidlelib.ParenMatchrrZTestCaserrmainr r r r s Y