B „ f ã@sjdZddlmZedƒddlZddlmZddlZddlmZGdd„dej ƒZ e d krfej d d dS) zNTest (selected) IDLE Edit menu items. Edit modules have their own test files é)ÚrequiresZguiN)Úttk)Úpyshellc@s@eZdZdZedd„ƒZedd„ƒZdd„Zdd „Zd d „Z d S) Ú PasteTestzeTest pasting into widgets that allow pasting. On X11, replacing selections requires tk fix. cCsht ¡|_}|j ¡t |¡t |¡|_t |¡|_ t  |¡|_ t  |¡|_ | ¡| d¡dS)NÚtwo)ÚtkZTkÚrootZwithdrawrZ fix_x11_pasteZTextÚtextZEntryÚentryrÚtentryZSpinboxÚspinÚclipboard_clearZclipboard_append)Úclsr©rúD/opt/alt/python37/lib64/python3.7/idlelib/idle_test/test_editmenu.pyÚ setUpClasss      zPasteTest.setUpClasscCs2|`|`|`|j ¡|j ¡|j ¡|`dS)N)r r r rr Zupdate_idletasksZdestroy)rrrrÚ tearDownClasss     zPasteTest.tearDownClassc Csn|j}xbdD]Z\}}|j||d>| dd¡| dd|¡| d¡| | dd¡|¡WdQRXq WdS)z4Test pasting into text with and without a selection.))Úzonetwo )Zselztwo )ÚtagÚansz1.0ÚendÚonez <>N)r ÚsubTestÚdeleteÚinsertÚevent_generateÚ assertEqualÚget)Úselfr rrrrrÚtest_paste_text%s  zPasteTest.test_paste_textc Cs†x€|j|jfD]p}xjdD]b\}}|j|||dD| dd¡| dd¡| d|¡| d¡| | ¡|¡WdQRXqWqWdS)z8Test pasting into an entry with and without a selection.))rÚonetwo)rr)r rrrrrz <>N) r r rrrZ select_rangerrr)rr rrrrrÚtest_paste_entry/s    zPasteTest.test_paste_entryc Csv|j}xjdD]b\}}|j||dF| dd¡| dd¡| dd|¡| d¡| | ¡|¡WdQRXq WdS) z9Test pasting into a spinbox with and without a selection.))rr )rr)rrrrrÚrangez <>N)r rrrZ selectionrrr)rr rrrrrÚtest_paste_spin<s   zPasteTest.test_paste_spinN) Ú__name__Ú __module__Ú __qualname__Ú__doc__Ú classmethodrrrr!r#rrrrr s    rÚ__main__é)Ú verbosity) r'Z test.supportrZtkinterrrZunittestZidlelibrZTestCaserr$ÚmainrrrrÚs   =