Skip to content

Commit

Permalink
[3.13] gh-86673: Loosen test_ttk.test_identify() requirements (GH-125335
Browse files Browse the repository at this point in the history
) (#125390)

In aeca373 (PR gh-12011, issue gh-71500), test_identify() was changed to expect different results on Darwin. Ned's fix was later adjusted by e52f9be. This workaround is only needed for some variants of Tk/Tcl on macOS, so we now allow both the workaround and the generic results for these tests.
(cherry picked from commit 4197a79)

Co-authored-by: Erlend E. Aasland <erlend@python.org>
  • Loading branch information
miss-islington and erlend-aasland authored Oct 13, 2024
1 parent 801ef7d commit bcadaf2
Showing 1 changed file with 5 additions and 5 deletions.
10 changes: 5 additions & 5 deletions Lib/test/test_ttk/test_widgets.py
Original file line number Diff line number Diff line change
Expand Up @@ -336,7 +336,8 @@ class EntryTest(AbstractWidgetTest, unittest.TestCase):
'show', 'state', 'style', 'takefocus', 'textvariable',
'validate', 'validatecommand', 'width', 'xscrollcommand',
)
IDENTIFY_AS = 'Entry.field' if sys.platform == 'darwin' else 'textarea'
# bpo-27313: macOS Tk/Tcl may or may not report 'Entry.field'.
IDENTIFY_AS = {'Entry.field', 'textarea'}

def setUp(self):
super().setUp()
Expand Down Expand Up @@ -373,8 +374,7 @@ def test_identify(self):
self.entry.pack()
self.entry.update()

# bpo-27313: macOS Cocoa widget differs from X, allow either
self.assertEqual(self.entry.identify(5, 5), self.IDENTIFY_AS)
self.assertIn(self.entry.identify(5, 5), self.IDENTIFY_AS)
self.assertEqual(self.entry.identify(-1, -1), "")

self.assertRaises(tkinter.TclError, self.entry.identify, None, 5)
Expand Down Expand Up @@ -461,7 +461,7 @@ class ComboboxTest(EntryTest, unittest.TestCase):
'validate', 'validatecommand', 'values',
'width', 'xscrollcommand',
)
IDENTIFY_AS = 'Combobox.button' if sys.platform == 'darwin' else 'textarea'
IDENTIFY_AS = {'Combobox.button', 'textarea'}

def setUp(self):
super().setUp()
Expand Down Expand Up @@ -1204,7 +1204,7 @@ class SpinboxTest(EntryTest, unittest.TestCase):
'takefocus', 'textvariable', 'to', 'validate', 'validatecommand',
'values', 'width', 'wrap', 'xscrollcommand',
)
IDENTIFY_AS = 'Spinbox.field' if sys.platform == 'darwin' else 'textarea'
IDENTIFY_AS = {'Spinbox.field', 'textarea'}

def setUp(self):
super().setUp()
Expand Down

0 comments on commit bcadaf2

Please sign in to comment.