Skip to content

Commit 15e73c2

Browse files
committed
Move tests and add blurb.
1 parent 81779d2 commit 15e73c2

File tree

2 files changed

+23
-13
lines changed

2 files changed

+23
-13
lines changed

Lib/tkinter/test/test_ttk/test_extensions.py

Lines changed: 21 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -276,9 +276,30 @@ def test_menu(self):
276276
self.assertRaises(tkinter.TclError, optmenu['menu'].invoke, -1)
277277
self.assertEqual(optmenu._variable.get(), items[0])
278278

279+
optmenu.destroy()
280+
281+
# specifying a callback
282+
success = []
283+
def cb_test(item):
284+
self.assertEqual(item, items[1])
285+
success.append(True)
286+
optmenu = ttk.OptionMenu(self.root, self.textvar, 'a', command=cb_test,
287+
*items)
288+
optmenu['menu'].invoke(1)
289+
if not success:
290+
self.fail("Menu callback not invoked")
291+
292+
optmenu.destroy()
293+
294+
def test_unique_radiobuttons(self):
279295
# check that radiobuttons are unique across instances (bpo25684)
296+
items = ('a', 'b', 'c')
297+
default = 'a'
298+
optmenu = ttk.OptionMenu(self.root, self.textvar, default, *items)
280299
textvar2 = tkinter.StringVar(self.root)
281300
optmenu2 = ttk.OptionMenu(self.root, textvar2, default, *items)
301+
optmenu.pack()
302+
optmenu.wait_visibility()
282303
optmenu2.pack()
283304
optmenu2.wait_visibility()
284305
optmenu['menu'].invoke(1)
@@ -296,19 +317,6 @@ def test_menu(self):
296317
del textvar2, optmenu_radiobutton_name, optmenu2_radiobutton_name
297318
optmenu2.destroy()
298319

299-
# specifying a callback
300-
success = []
301-
def cb_test(item):
302-
self.assertEqual(item, items[1])
303-
success.append(True)
304-
optmenu = ttk.OptionMenu(self.root, self.textvar, 'a', command=cb_test,
305-
*items)
306-
optmenu['menu'].invoke(1)
307-
if not success:
308-
self.fail("Menu callback not invoked")
309-
310-
optmenu.destroy()
311-
312320

313321
tests_gui = (LabeledScaleTest, OptionMenuTest)
314322

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
Change ``ttk.OptionMenu`` radiobuttons to be unique across instances of
2+
``OptionMenu``.

0 commit comments

Comments
 (0)