diff options
author | Zhikang Yan <2951256653@qq.com> | 2025-01-13 23:54:46 +0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2025-01-13 15:54:46 +0000 |
commit | da8825ea95a7096bb4f933d33b212a94ade10f6e (patch) | |
tree | 9b9bdccaf09eeee02ffdc12573d4e00d95cc839a /Lib/test/test_tkinter/test_misc.py | |
parent | 402b91da87052878b4e7e8946ba91bdf4ee4bebe (diff) | |
download | cpython-da8825ea95a7096bb4f933d33b212a94ade10f6e.tar.gz cpython-da8825ea95a7096bb4f933d33b212a94ade10f6e.zip |
gh-128562: Fix generation of the tkinter widget names (GH-128604)
There were possible conflicts if the widget class name ends with a digit.
Diffstat (limited to 'Lib/test/test_tkinter/test_misc.py')
-rw-r--r-- | Lib/test/test_tkinter/test_misc.py | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/Lib/test/test_tkinter/test_misc.py b/Lib/test/test_tkinter/test_misc.py index 33621693918..96ea3f0117c 100644 --- a/Lib/test/test_tkinter/test_misc.py +++ b/Lib/test/test_tkinter/test_misc.py @@ -31,12 +31,20 @@ class MiscTest(AbstractTkTest, unittest.TestCase): self.assertEqual(repr(f), '<tkinter.Frame object .top.child>') def test_generated_names(self): + class Button2(tkinter.Button): + pass + t = tkinter.Toplevel(self.root) f = tkinter.Frame(t) f2 = tkinter.Frame(t) + self.assertNotEqual(str(f), str(f2)) b = tkinter.Button(f2) - for name in str(b).split('.'): + b2 = Button2(f2) + for name in str(b).split('.') + str(b2).split('.'): self.assertFalse(name.isidentifier(), msg=repr(name)) + b3 = tkinter.Button(f2) + b4 = Button2(f2) + self.assertEqual(len({str(b), str(b2), str(b3), str(b4)}), 4) @requires_tk(8, 6, 6) def test_tk_busy(self): |