3  f @sjdZddlmZedddlZddlmZddlZddlmZGdddej Z e d krfej d d dS) zNTest (selected) IDLE Edit menu items. Edit modules have their own test files )requiresZguiN)ttk)pyshellc@s@eZdZdZeddZeddZddZdd Zd d Z d S) PasteTestzeTest pasting into widgets that allow pasting. On X11, replacing selections requires tk fix. cCshtj|_}|jjtj|tj||_tj||_ t j||_ tj ||_ |j|jddS)Ntwo)tkZTkrootZwithdrawrZ fix_x11_pasteZTexttextZEntryentryrtentryZSpinboxspinclipboard_clearZclipboard_append)clsrrD/opt/alt/python36/lib64/python3.6/idlelib/idle_test/test_editmenu.py setUpClasss      zPasteTest.setUpClasscCs2|`|`|`|jj|jj|jj|`dS)N)r r r rr Zupdate_idletasksZdestroy)rrrr tearDownClasss     zPasteTest.tearDownClassc Csn|j}xbd D]Z\}}|j||d>|jdd|jdd||jd |j|jdd|Wd QRXq Wd S)z4Test pasting into text with and without a selection.onetwo seltwo )tagansz1.0endonez <>Nrrrr)rr)r subTestdeleteinsertevent_generate assertEqualget)selfr rrrrrtest_paste_text%s  zPasteTest.test_paste_textc Csx|j|jfD]p}xjd D]b\}}|j|||dD|jdd|jdd|jd||jd|j|j|WdQRXqWqWdS) z8Test pasting into an entry with and without a selection.ronetworr)r rrrz <>Nrr%rr)r&r') r r rrrZ select_ranger r!r")r#r rrrrrtest_paste_entry/s    zPasteTest.test_paste_entryc Csv|j}xjd D]b\}}|j||dF|jdd|jdd|jdd||jd|j|j|Wd QRXq Wd S) z9Test pasting into a spinbox with and without a selection.rr%rr)rrrrangez <>Nrr%rr)r*r+)r rrrZ selectionr r!r")r#r rrrrrtest_paste_spin<s   zPasteTest.test_paste_spinN) __name__ __module__ __qualname____doc__ classmethodrrr$r(r,rrrrr s    r__main__) verbosity) r0Z test.supportrZtkinterrrZunittestZidlelibrZTestCaserr-mainrrrrs   =