summaryrefslogtreecommitdiff
path: root/Lib/idlelib/idle_test/test_editmenu.py
diff options
context:
space:
mode:
authorBrett Cannon <brett@python.org>2016-07-15 11:55:21 -0700
committerBrett Cannon <brett@python.org>2016-07-15 11:55:21 -0700
commit075aa39abfe69d8f52bb362939783a25392ae3c4 (patch)
tree1ccb286fda0998aad3e3f3dd1a7ac2c31670cfe9 /Lib/idlelib/idle_test/test_editmenu.py
parente2ad41ee605fd10544300d372b8f90e7ad460e92 (diff)
parent238a55125d241591cac906f008f7ce7da503eb78 (diff)
downloadcpython-075aa39abfe69d8f52bb362939783a25392ae3c4.tar.gz
Merge for #27083
Diffstat (limited to 'Lib/idlelib/idle_test/test_editmenu.py')
-rw-r--r--Lib/idlelib/idle_test/test_editmenu.py28
1 files changed, 15 insertions, 13 deletions
diff --git a/Lib/idlelib/idle_test/test_editmenu.py b/Lib/idlelib/idle_test/test_editmenu.py
index 50317a97e5..654f060225 100644
--- a/Lib/idlelib/idle_test/test_editmenu.py
+++ b/Lib/idlelib/idle_test/test_editmenu.py
@@ -5,8 +5,9 @@ Edit modules have their own test files files
from test.support import requires
requires('gui')
import tkinter as tk
+from tkinter import ttk
import unittest
-from idlelib import PyShell
+from idlelib import pyshell
class PasteTest(unittest.TestCase):
'''Test pasting into widgets that allow pasting.
@@ -16,16 +17,17 @@ class PasteTest(unittest.TestCase):
@classmethod
def setUpClass(cls):
cls.root = root = tk.Tk()
- PyShell.fix_x11_paste(root)
+ pyshell.fix_x11_paste(root)
cls.text = tk.Text(root)
cls.entry = tk.Entry(root)
+ cls.tentry = ttk.Entry(root)
cls.spin = tk.Spinbox(root)
root.clipboard_clear()
root.clipboard_append('two')
@classmethod
def tearDownClass(cls):
- del cls.text, cls.entry, cls.spin
+ del cls.text, cls.entry, cls.tentry
cls.root.clipboard_clear()
cls.root.update_idletasks()
cls.root.destroy()
@@ -43,16 +45,16 @@ class PasteTest(unittest.TestCase):
def test_paste_entry(self):
"Test pasting into an entry with and without a selection."
- # On 3.6, generated <<Paste>> fails without empty select range
- # for 'no selection'. Live widget works fine.
- entry = self.entry
- for end, ans in (0, 'onetwo'), ('end', 'two'):
- with self.subTest(entry=entry, end=end, ans=ans):
- entry.delete(0, 'end')
- entry.insert(0, 'one')
- entry.select_range(0, end) # see note
- entry.event_generate('<<Paste>>')
- self.assertEqual(entry.get(), ans)
+ # Generated <<Paste>> fails for tk entry without empty select
+ # range for 'no selection'. Live widget works fine.
+ for entry in self.entry, self.tentry:
+ for end, ans in (0, 'onetwo'), ('end', 'two'):
+ with self.subTest(entry=entry, end=end, ans=ans):
+ entry.delete(0, 'end')
+ entry.insert(0, 'one')
+ entry.select_range(0, end)
+ entry.event_generate('<<Paste>>')
+ self.assertEqual(entry.get(), ans)
def test_paste_spin(self):
"Test pasting into a spinbox with and without a selection."