3  fB@svdZddlZddlmZddlmZGdddeZGdddeejZ Gd d d eejZ e d krrej d d ddS)zi Test mock_tk.Text class against tkinter.Text class Run same tests with both by creating a mixin class. N)requires)TclErrorc@sleZdZdZdZedZddZddZdd Zd d Z d d Z ddZ ddZ ddZ ddZddZdS)TextTestz*Define items common to both sets of tests.z hello world cCs,|j|jjdd|j|jjdddS)Nz1.0rend) assertEqualtextget)selfr @/opt/alt/python36/lib64/python3.6/idlelib/idle_test/test_text.py test_initszTextTest.test_initcCsH|jj}xdD]}|j||dqWxdD]}|j||d q,WdS)Ng?333333?1.-11.0 1.0 lineend1.end1.33insertr@2.133.44z2.0)rrrrrrrr)rrrr)r indexr)r rdexr r r test_index_emptys  zTextTest.test_index_emptycCsv|jj}|jjd|jxd D]}|j||dqWxdD]}|j||dq>===!=z1.1z2.1z2.3z3.3r5TTFFFr6TTTFFr7FFFTTr8FFTTTr9FFTFFr:TTFTT)r;r<r=r>r?r@)r comparerrZ assertRaisesr) r rAr*r4Zless1Zless0ZequalZgreater0Zgreater1r r r test_compares zTextTest.test_compareN)__name__ __module__ __qualname____doc__r%r)rrr&r+r.r0r1r2r3rBr r r r r s   rc@s(eZdZeddZddZddZdS) MockTextTestcCsddlm}||_dS)Nr)Text)Zidlelib.idle_test.mock_tkrH)clsrHr r r setUpClasss zMockTextTest.setUpClasscCs|j|_dS)N)rHr )r r r r setUpszMockTextTest.setUpcCsb|jj}|j}|jjd|j||dd d ||dd d ||ddd ||ddddS)Nz1.0rz3.1r)rMrNrP)rMrN)rMrO)rMrO)r Z_decoderrr%)r decoder*r r r test_decodeszMockTextTest.test_decodeN)rCrDrE classmethodrJrKrRr r r r rGs rGc@s,eZdZeddZeddZddZdS) TkTextTestcCs*tdddlm}m}||_||_dS)NZguir)TkrH)rZtkinterrUrHroot)rIrUrHr r r rJszTkTextTest.setUpClasscCs|jj|`dS)N)rVZdestroy)rIr r r tearDownClasss zTkTextTest.tearDownClasscCs|j|j|_dS)N)rHrVr )r r r r rKszTkTextTest.setUpN)rCrDrErSrJrWrKr r r r rTs  rT__main__rMF) verbosityexit) rFZunittestZ test.supportrZ_tkinterrobjectrZTestCaserGrTrCmainr r r r s  :