gh-107262: Update Tkinter tests for Tcl/Tk 8.6.14 (GH-119322)

Co-authored-by: Serhiy Storchaka <storchaka@gmail.com>
This commit is contained in:
James De Bias 2024-05-31 06:34:59 +10:00 committed by GitHub
parent ef01e95ae3
commit 9732ed5ca9
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
2 changed files with 22 additions and 9 deletions

View File

@ -660,7 +660,9 @@ class TextTest(AbstractWidgetTest, unittest.TestCase):
widget = self.create()
self.checkParam(widget, 'tabs', (10.2, 20.7, '1i', '2i'))
self.checkParam(widget, 'tabs', '10.2 20.7 1i 2i',
expected=('10.2', '20.7', '1i', '2i'))
expected=(10.2, 20.7, '1i', '2i')
if get_tk_patchlevel(self.root) >= (8, 6, 14)
else ('10.2', '20.7', '1i', '2i'))
self.checkParam(widget, 'tabs', '2c left 4c 6c center',
expected=('2c', 'left', '4c', '6c', 'center'))
self.checkInvalidParam(widget, 'tabs', 'spam',
@ -999,12 +1001,16 @@ class ListboxTest(AbstractWidgetTest, unittest.TestCase):
widget.itemconfigure()
with self.assertRaisesRegex(TclError, 'bad listbox index "red"'):
widget.itemconfigure('red')
if get_tk_patchlevel(self.root) >= (8, 6, 14):
prefix = ('background', '', '', '')
else:
prefix = ('background', 'background', 'Background', '')
self.assertEqual(widget.itemconfigure(0, 'background'),
('background', 'background', 'Background', '', 'red'))
(*prefix, 'red'))
self.assertEqual(widget.itemconfigure('end', 'background'),
('background', 'background', 'Background', '', 'violet'))
(*prefix, 'violet'))
self.assertEqual(widget.itemconfigure('@0,0', 'background'),
('background', 'background', 'Background', '', 'red'))
(*prefix, 'red'))
d = widget.itemconfigure(0)
self.assertIsInstance(d, dict)

View File

@ -27,13 +27,20 @@ class StandardTtkOptionsTests(StandardOptionsTests):
def test_configure_padding(self):
widget = self.create()
self.checkParam(widget, 'padding', 0, expected=('0',))
self.checkParam(widget, 'padding', 5, expected=('5',))
self.checkParam(widget, 'padding', (5, 6), expected=('5', '6'))
if get_tk_patchlevel(self.root) < (8, 6, 14):
def padding_conv(value):
self.assertIsInstance(value, tuple)
return tuple(map(str, value))
else:
padding_conv = None
self.checkParam(widget, 'padding', 0, expected=(0,), conv=padding_conv)
self.checkParam(widget, 'padding', 5, expected=(5,), conv=padding_conv)
self.checkParam(widget, 'padding', (5, 6),
expected=(5, 6), conv=padding_conv)
self.checkParam(widget, 'padding', (5, 6, 7),
expected=('5', '6', '7'))
expected=(5, 6, 7), conv=padding_conv)
self.checkParam(widget, 'padding', (5, 6, 7, 8),
expected=('5', '6', '7', '8'))
expected=(5, 6, 7, 8), conv=padding_conv)
self.checkParam(widget, 'padding', ('5p', '6p', '7p', '8p'))
self.checkParam(widget, 'padding', (), expected='')