| 
									
										
										
										
											2020-12-19 12:17:08 +02:00
										 |  |  | import unittest | 
					
						
							|  |  |  | import tkinter | 
					
						
							|  |  |  | from test.support import requires, run_unittest, swap_attr | 
					
						
							|  |  |  | from tkinter.test.support import AbstractDefaultRootTest | 
					
						
							|  |  |  | from tkinter.simpledialog import Dialog, askinteger | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | requires('gui') | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | class DefaultRootTest(AbstractDefaultRootTest, unittest.TestCase): | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     def test_askinteger(self): | 
					
						
							| 
									
										
										
										
											2020-12-25 20:19:20 +02:00
										 |  |  |         @staticmethod | 
					
						
							|  |  |  |         def mock_wait_window(w): | 
					
						
							|  |  |  |             nonlocal ismapped | 
					
						
							|  |  |  |             ismapped = w.master.winfo_ismapped() | 
					
						
							|  |  |  |             w.destroy() | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |         with swap_attr(Dialog, 'wait_window', mock_wait_window): | 
					
						
							|  |  |  |             ismapped = None | 
					
						
							|  |  |  |             askinteger("Go To Line", "Line number") | 
					
						
							|  |  |  |             self.assertEqual(ismapped, False) | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |             root = tkinter.Tk() | 
					
						
							|  |  |  |             ismapped = None | 
					
						
							| 
									
										
										
										
											2020-12-19 12:17:08 +02:00
										 |  |  |             askinteger("Go To Line", "Line number") | 
					
						
							| 
									
										
										
										
											2020-12-25 20:19:20 +02:00
										 |  |  |             self.assertEqual(ismapped, True) | 
					
						
							|  |  |  |             root.destroy() | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |             tkinter.NoDefaultRoot() | 
					
						
							|  |  |  |             self.assertRaises(RuntimeError, askinteger, "Go To Line", "Line number") | 
					
						
							| 
									
										
										
										
											2020-12-19 12:17:08 +02:00
										 |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | tests_gui = (DefaultRootTest,) | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | if __name__ == "__main__": | 
					
						
							|  |  |  |     run_unittest(*tests_gui) |