3 2a @s|ddlmZddlmZedddlZddlmZddlmZm Z GdddZ Gd d d ej Z e d krxejd d dS)) ParenMatch)requiresZguiN)Mock)TkTextc@seZdZddZdS) DummyEditwincCs||_d|_d|_d|_dS)NT)textZ indentwidthZtabwidthZcontext_use_ps1)selfr r 4/opt/alt/python36/lib64/python3.6/test_parenmatch.py__init__szDummyEditwin.__init__N)__name__ __module__ __qualname__r r r r r rsrc@sLeZdZeddZeddZddZddZd d Zd d Z d dZ dS)ParenMatchTestcCs8t|_|jjt|j|_t|j|_t|j_dS)N) rrootZwithdrawrr reditwinrZ text_frame)clsr r r setUpClasss    zParenMatchTest.setUpClasscCs$|`|`|jj|jj|`dS)N)r rrZupdate_idletasksZdestroy)rr r r tearDownClass!s  zParenMatchTest.tearDownClasscCs|jjdddS)Nz1.0end)r delete)r r r r tearDown(szParenMatchTest.tearDowncCst|j}dd|_|S)NcSsdS)Nr r r r r -sz/ParenMatchTest.get_parenmatch..)rrZbell)r pmr r r get_parenmatch+s  zParenMatchTest.get_parenmatchc Cs|j}|j}xdD]\}}}|j|d |jd d ||_|jd d|jd|jd|j|dkr|j |j dd d |j |j dd ||jd d|j |j d|j|j|j dd f|jd|j |j dd |WdQRXqWdS)!Nopener1.101.11defaultparens1.141.151.16 expression)stylez1.0rinsertzdef foobar(a, beventz<>Zparen)rrrrrr*r+rrrrr r-r.r"r#r#r$r!r0r1rr#rr$r%r3r4)r,r/r2r5)rr)r rZsubTestrZSTYLEr'flash_paren_eventZassertInZ event_infoZassertTupleEqualZ tag_nextrangeZ tag_prevrange restore_eventZ assertNotInZ assertEqualparen_closed_event)r r rr&Zrange1Zrange2r r r test_paren_styles0s4      z ParenMatchTest.test_paren_stylescCs^|j}|j}|jdd|jd|jdd|jd|jd|jdd|jddS)Nr'z# this is a commen)r(z defz a, *arg))r rr'r8r6)r r rr r r test_paren_cornerRs      z ParenMatchTest.test_paren_cornercCsN|j}t|_|jd|j|jj|jj|jd|j|jjdS)Nr)rrr7Zhandle_restore_timerZ assertTrueZcalledZ reset_mockZ assertFalse)r rr r r test_handle_restore_timeres   z(ParenMatchTest.test_handle_restore_timerN) rrr classmethodrrrrr9r:r<r r r r rs  "r__main__) verbosity)Zidlelib.parenmatchrZ test.supportrZunittestZ unittest.mockrZtkinterrrrZTestCaserrmainr r r r s   X