MCPcopy Index your code
hub / github.com/python/cpython / test_bind_events

Method test_bind_events

Lib/test/test_tkinter/test_misc.py:1284–1328  ·  view source on GitHub ↗
(self)

Source from the content-addressed store, hash-verified

1282 self.assertEqual(f.bindtags(), ('a', 'b c'))
1283
1284 def test_bind_events(self):
1285 event = '<Enter>'
1286 root = self.root
1287 t = tkinter.Toplevel(root)
1288 f = tkinter.Frame(t, class_='Test', width=150, height=100)
1289 f.pack()
1290 root.wait_visibility() # needed on Windows
1291 root.update_idletasks()
1292 self.addCleanup(root.unbind_class, 'Test', event)
1293 self.addCleanup(root.unbind_class, 'Toplevel', event)
1294 self.addCleanup(root.unbind_class, 'tag', event)
1295 self.addCleanup(root.unbind_class, 'tag2', event)
1296 self.addCleanup(root.unbind_all, event)
1297 def test(what):
1298 return lambda e: events.append((what, e.widget))
1299
1300 root.bind_all(event, test('all'))
1301 root.bind_class('Test', event, test('frame class'))
1302 root.bind_class('Toplevel', event, test('toplevel class'))
1303 root.bind_class('tag', event, test('tag'))
1304 root.bind_class('tag2', event, test('tag2'))
1305 f.bind(event, test('frame'))
1306 t.bind(event, test('toplevel'))
1307
1308 events = []
1309 f.event_generate(event)
1310 self.assertEqual(events, [
1311 ('frame', f),
1312 ('frame class', f),
1313 ('toplevel', f),
1314 ('all', f),
1315 ])
1316
1317 events = []
1318 t.event_generate(event)
1319 self.assertEqual(events, [
1320 ('toplevel', t),
1321 ('toplevel class', t),
1322 ('all', t),
1323 ])
1324
1325 f.bindtags(('tag', 'tag3'))
1326 events = []
1327 f.event_generate(event)
1328 self.assertEqual(events, [('tag', f)])
1329
1330
1331class DefaultRootTest(AbstractDefaultRootTest, unittest.TestCase):

Callers

nothing calls this directly

Calls 11

wait_visibilityMethod · 0.80
update_idletasksMethod · 0.80
addCleanupMethod · 0.80
bind_allMethod · 0.80
bind_classMethod · 0.80
event_generateMethod · 0.80
bindtagsMethod · 0.80
testFunction · 0.70
packMethod · 0.45
bindMethod · 0.45
assertEqualMethod · 0.45

Tested by

no test coverage detected