B 0c @s|ddlmZddlmZedddlZddlmZddlmZm Z GdddZ Gd d d ej Z e d krxejd d dS)) ParenMatch)requiresZguiN)Mock)TkTextc@seZdZddZdS) DummyEditwincCs||_d|_d|_d|_dS)Nz>>>)textZ indentwidthZtabwidthZprompt_last_line)selfr r F/opt/alt/python37/lib64/python3.7/idlelib/idle_test/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|_|jt|j|_t|j|_t|j_dS)N) rrootZwithdrawrr reditwinrZ text_frame)clsr r r setUpClasss    zParenMatchTest.setUpClasscCs$|`|`|j|j|`dS)N)r rrZupdate_idletasksZdestroy)rr r r tearDownClass!s  zParenMatchTest.tearDownClasscCs|jdddS)Nz1.0end)r delete)r r r r tearDown(szParenMatchTest.tearDowncCst|j}dd|_|S)NcSsdS)Nr r r r r -z/ParenMatchTest.get_parenmatch..)rrZbell)r pmr r r get_parenmatch+s  zParenMatchTest.get_parenmatchc Cs|j}|}xdD]\}}}|j|d|dd||_|dd|d|d||d kr| | d dd | | d d||dd | | d||| d dd |d| | d d|WdQRXqWdS)N))opener)z1.10z1.11)z1.10z1.11)default)z1.10z1.11)z1.10z1.11)parens)z1.14z1.15)z1.15z1.16)Z expression)z1.10z1.15)z1.10z1.16)stylez1.0rinsertzdef foobar(a, beventz<>r Zparen)z1.10z1.11)r )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_styles0s.      z ParenMatchTest.test_paren_stylescCs^|j}|}|dd|d|dd|d|d|dd|ddS)Nr"z# this is a commen)r#z defz a, *arg))r rr"r'r%)r r rr r r test_paren_cornerRs      z ParenMatchTest.test_paren_cornercCsN|}t|_|d||jj|j|d||jjdS)Nr)rrr&Zhandle_restore_timerZ assertTrueZcalledZ reset_mockZ assertFalse)r rr r r test_handle_restore_timeres   z(ParenMatchTest.test_handle_restore_timerN) rrr classmethodrrrrr(r)r+r r r r rs  "r__main__) verbosity)Zidlelib.parenmatchrZ test.supportrZunittestZ unittest.mockrZtkinterrrrZTestCaserrmainr r r r s   X