]> git.ipfire.org Git - thirdparty/Python/cpython.git/commitdiff
bpo-41831: Add tests for tkinter.Event.__repr__ (GH-22354)
authorMiss Skeleton (bot) <31488909+miss-islington@users.noreply.github.com>
Fri, 9 Oct 2020 19:05:26 +0000 (12:05 -0700)
committerGitHub <noreply@github.com>
Fri, 9 Oct 2020 19:05:26 +0000 (12:05 -0700)
(cherry picked from commit f25323a307a72c40862c87c2df822f83be6645da)

Co-authored-by: Serhiy Storchaka <storchaka@gmail.com>
Lib/tkinter/test/test_tkinter/test_misc.py

index 236cae0e9fac4e96d9bbc52e129a6db99d552589..350f561bab4065ec1cb5f04dac1b4ce7991c0cf1 100644 (file)
@@ -178,6 +178,54 @@ class MiscTest(AbstractTkTest, unittest.TestCase):
         with self.assertRaises(tkinter.TclError):
             root.clipboard_get()
 
+    def test_event_repr_defaults(self):
+        e = tkinter.Event()
+        e.serial = 12345
+        e.num = '??'
+        e.height = '??'
+        e.keycode = '??'
+        e.state = 0
+        e.time = 123456789
+        e.width = '??'
+        e.x = '??'
+        e.y = '??'
+        e.char = ''
+        e.keysym = '??'
+        e.keysym_num = '??'
+        e.type = '100'
+        e.widget = '??'
+        e.x_root = '??'
+        e.y_root = '??'
+        e.delta = 0
+        self.assertEqual(repr(e), '<100 event>')
+
+    def test_event_repr(self):
+        e = tkinter.Event()
+        e.serial = 12345
+        e.num = 3
+        e.focus = True
+        e.height = 200
+        e.keycode = 65
+        e.state = 0x30405
+        e.time = 123456789
+        e.width = 300
+        e.x = 10
+        e.y = 20
+        e.char = 'A'
+        e.send_event = True
+        e.keysym = 'Key-A'
+        e.keysym_num = ord('A')
+        e.type = tkinter.EventType.Configure
+        e.widget = '.text'
+        e.x_root = 1010
+        e.y_root = 1020
+        e.delta = -1
+        self.assertEqual(repr(e),
+                         "<Configure event send_event=True"
+                         " state=Shift|Control|Button3|0x30000"
+                         " keysym=Key-A keycode=65 char='A'"
+                         " num=3 delta=-1 focus=True"
+                         " x=10 y=20 width=300 height=200>")
 
 tests_gui = (MiscTest, )