[3.6] bpo-21519: IDLE basic custom key entry better detects duplicate… · python/cpython@93b88e9 (original) (raw)
`@@ -28,8 +28,9 @@ def setUpClass(cls):
`
28
28
`requires('gui')
`
29
29
`cls.root = Tk()
`
30
30
`cls.root.withdraw()
`
``
31
`+
keylist = [[''], ['', '']]
`
31
32
`cls.dialog = cls.Validator(
`
32
``
`-
cls.root, 'Title', '<>', [['']], _utest=True)
`
``
33
`+
cls.root, 'Title', '<>', keylist, _utest=True)
`
33
34
``
34
35
`@classmethod
`
35
36
`def tearDownClass(cls):
`
`@@ -78,10 +79,15 @@ def test_keys_shift_bad(self):
`
78
79
`self.dialog.GetModifiers.result = []
`
79
80
``
80
81
`def test_keys_dup(self):
`
81
``
`-
self.dialog.listKeysFinal.get.result = 'F12'
`
``
82
`+
for mods, final, seq in (([], 'F12', ''),
`
``
83
`+
(['Control'], 'x', ''),
`
``
84
`+
(['Control'], 'X', '')):
`
``
85
`+
with self.subTest(m=mods, f=final, s=seq):
`
``
86
`+
self.dialog.listKeysFinal.get.result = final
`
``
87
`+
self.dialog.GetModifiers.result = mods
`
``
88
`+
self.assertFalse(self.dialog.KeysOK(seq))
`
``
89
`+
self.assertIn('already in use', self.dialog.showerror.message)
`
82
90
`self.dialog.GetModifiers.result = []
`
83
``
`-
self.assertFalse(self.dialog.KeysOK(''))
`
84
``
`-
self.assertIn('already in use', self.dialog.showerror.message)
`
85
91
``
86
92
`def test_bind_ok(self):
`
87
93
`self.assertTrue(self.dialog.bind_ok(''))
`