|
4 | 4 | from tkinter import TclError
|
5 | 5 | import enum
|
6 | 6 | from test import support
|
7 |
| -from test.test_tkinter.support import AbstractTkTest, AbstractDefaultRootTest, requires_tk |
| 7 | +from test.test_tkinter.support import (AbstractTkTest, AbstractDefaultRootTest, |
| 8 | + requires_tk, get_tk_patchlevel) |
8 | 9 |
|
9 | 10 | support.requires('gui')
|
10 | 11 |
|
@@ -540,6 +541,31 @@ def test_wm_attribute(self):
|
540 | 541 | self.assertEqual(w.wm_attributes('alpha'),
|
541 | 542 | 1.0 if self.wantobjects else '1.0')
|
542 | 543 |
|
| 544 | + def test_wm_iconbitmap(self): |
| 545 | + t = tkinter.Toplevel(self.root) |
| 546 | + self.assertEqual(t.wm_iconbitmap(), '') |
| 547 | + t.wm_iconbitmap('hourglass') |
| 548 | + bug = False |
| 549 | + if t._windowingsystem == 'aqua': |
| 550 | + # Tk bug 13ac26b35dc55f7c37f70b39d59d7ef3e63017c8. |
| 551 | + patchlevel = get_tk_patchlevel(t) |
| 552 | + if patchlevel < (8, 6, 17) or (9, 0) <= patchlevel < (9, 0, 2): |
| 553 | + bug = True |
| 554 | + if not bug: |
| 555 | + self.assertEqual(t.wm_iconbitmap(), 'hourglass') |
| 556 | + self.assertEqual(self.root.wm_iconbitmap(), '') |
| 557 | + t.wm_iconbitmap('') |
| 558 | + self.assertEqual(t.wm_iconbitmap(), '') |
| 559 | + |
| 560 | + if t._windowingsystem == 'win32': |
| 561 | + t.wm_iconbitmap(default='hourglass') |
| 562 | + self.assertEqual(t.wm_iconbitmap(), 'hourglass') |
| 563 | + self.assertEqual(self.root.wm_iconbitmap(), '') |
| 564 | + t.wm_iconbitmap(default='') |
| 565 | + self.assertEqual(t.wm_iconbitmap(), '') |
| 566 | + |
| 567 | + t.destroy() |
| 568 | + |
543 | 569 |
|
544 | 570 | class EventTest(AbstractTkTest, unittest.TestCase):
|
545 | 571 |
|
|
0 commit comments