Yf @sdZddlmZedddlZddlZddlmZGdddejZ e dkr}ej d d dS) zTTest (selected) IDLE Edit menu items. Edit modules have their own test files files )requiresZguiN)PyShellc@s^eZdZdZeddZeddZddZdd Zd d Z d S) PasteTestzeTest pasting into widgets that allow pasting. On X11, replacing selections requires tk fix. cCs{tj|_}|jtj|tj||_tj||_ tj ||_ |j |j ddS)Ntwo)tkZTkrootZwithdrawrZ fix_x11_pasteZTexttextZEntryentryZSpinboxspinclipboard_clearZclipboard_append)clsrr D/opt/alt/python35/lib64/python3.5/idlelib/idle_test/test_editmenu.py setUpClasss   zPasteTest.setUpClasscCsC|`|`|`|jj|jj|jj|`dS)N)rr r rr Zupdate_idletasksZdestroy)r r r r tearDownClasss    zPasteTest.tearDownClassc Cs|j}xdD]x\}}|jd|d|Q|jdd|jdd ||jd |j|jdd|Wd QRXqWd S)z4Test pasting into text with and without a selection.onetwo seltwo tagansz1.0endonez <>Nrrrr)rr)rsubTestdeleteinsertevent_generate assertEqualget)selfrrrr r rtest_paste_text#s  zPasteTest.test_paste_textc Cs|j}xd D]\}}|jd|d|d|X|jdd|jdd|jd||jd|j|j|Wd QRXqWd S) z8Test pasting into an entry with and without a selection.ronetworrr rrz <>Nrr#rr)r$r%)r rrrZ select_rangerrr )r!r rrr r rtest_paste_entry-s  zPasteTest.test_paste_entryc Cs|j}xd D]\}}|jd|d|[|jdd|jdd|jdd||jd|j|j|Wd QRXqWd S) z9Test pasting into a spinbox with and without a selection.rr#rrrrrangez <>Nrr#rr)r(r))r rrrZ selectionrrr )r!r rrr r rtest_paste_spin:s  zPasteTest.test_paste_spinN) __name__ __module__ __qualname____doc__ classmethodrrr"r&r*r r r rr s   r__main__ verbosity) r.Z test.supportrZtkinterrZunittestZidlelibrZTestCaserr+mainr r r rs   <