Skip to content
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
26 changes: 23 additions & 3 deletions Lib/test/test_tkinter/test_simpledialog.py
Original file line number Diff line number Diff line change
Expand Up @@ -3,14 +3,14 @@
from test.support import requires, swap_attr
from test.test_tkinter.support import setUpModule # noqa: F401
from test.test_tkinter.support import AbstractDefaultRootTest
from tkinter.simpledialog import Dialog, askinteger
from tkinter.simpledialog import SimpleDialog, Dialog, askinteger, askfloat

requires('gui')


class DefaultRootTest(AbstractDefaultRootTest, unittest.TestCase):

def test_askinteger(self):
def test_ask(self):
@staticmethod
def mock_wait_window(w):
nonlocal ismapped
Expand All @@ -19,18 +19,38 @@ def mock_wait_window(w):

with swap_attr(Dialog, 'wait_window', mock_wait_window):
ismapped = None

askinteger("Go To Line", "Line number")
self.assertEqual(ismapped, False)
askfloat("Float", "Enter a float")
self.assertEqual(ismapped, False)

root = tkinter.Tk()
ismapped = None

askinteger("Go To Line", "Line number")
self.assertEqual(ismapped, True)
root.destroy()
askfloat("Float", "Enter a float")
self.assertEqual(ismapped, True)

root.destroy()
tkinter.NoDefaultRoot()

self.assertRaises(RuntimeError, askinteger, "Go To Line", "Line number")
self.assertRaises(RuntimeError, askfloat, "Float", "Enter a float")

def test_simpledialog(self):
root = tkinter.Tk()

dialog = SimpleDialog(
root,
title="title",
text="text",
buttons=["b1", "b2", "b3"]
)

root.update()
root.destroy()

if __name__ == "__main__":
unittest.main()
Loading