Terry Jan Reedy | 725d9dd | 2013-07-28 00:00:20 -0400 | [diff] [blame] | 1 | import unittest |
Zachary Ware | ceced6b | 2014-05-02 10:51:07 -0500 | [diff] [blame] | 2 | from test.support import import_module |
Terry Jan Reedy | 725d9dd | 2013-07-28 00:00:20 -0400 | [diff] [blame] | 3 | |
Terry Jan Reedy | 2a6d5da | 2018-05-22 13:24:04 -0400 | [diff] [blame] | 4 | # Skip test_idle if _tkinter wasn't built, if tkinter is missing, |
| 5 | # if tcl/tk is not the 8.5+ needed for ttk widgets, |
| 6 | # or if idlelib is missing (not installed). |
| 7 | tk = import_module('tkinter') # Also imports _tkinter. |
Terry Jan Reedy | 1080d13 | 2016-06-09 21:09:15 -0400 | [diff] [blame] | 8 | if tk.TkVersion < 8.5: |
| 9 | raise unittest.SkipTest("IDLE requires tk 8.5 or later.") |
Terry Jan Reedy | 7c15341 | 2016-06-26 17:48:02 -0400 | [diff] [blame] | 10 | idlelib = import_module('idlelib') |
Terry Jan Reedy | db4e5c5 | 2013-05-27 21:32:03 -0400 | [diff] [blame] | 11 | |
Terry Jan Reedy | 2a6d5da | 2018-05-22 13:24:04 -0400 | [diff] [blame] | 12 | # Before importing and executing more of idlelib, |
| 13 | # tell IDLE to avoid changing the environment. |
Terry Jan Reedy | f35bb9e | 2016-08-16 00:10:14 -0400 | [diff] [blame] | 14 | idlelib.testing = True |
| 15 | |
Terry Jan Reedy | 2a6d5da | 2018-05-22 13:24:04 -0400 | [diff] [blame] | 16 | # Unittest.main and test.libregrtest.runtest.runtest_inner |
| 17 | # call load_tests, when present here, to discover tests to run. |
Terry Jan Reedy | 7c15341 | 2016-06-26 17:48:02 -0400 | [diff] [blame] | 18 | from idlelib.idle_test import load_tests |
Terry Jan Reedy | db4e5c5 | 2013-05-27 21:32:03 -0400 | [diff] [blame] | 19 | |
| 20 | if __name__ == '__main__': |
Terry Jan Reedy | f35bb9e | 2016-08-16 00:10:14 -0400 | [diff] [blame] | 21 | tk.NoDefaultRoot() |
| 22 | unittest.main(exit=False) |
Terry Jan Reedy | 43b1713 | 2016-07-25 00:31:54 -0400 | [diff] [blame] | 23 | tk._support_default_root = 1 |
| 24 | tk._default_root = None |