test_modalhook.py 948 Bytes
Newer Older
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34
import unittest
from unittests import wtc
import wx

#---------------------------------------------------------------------------

class modalhook_Tests(wtc.WidgetTestCase):

    def test_modalhook1(self):
        class MyModalDialogHook(wx.ModalDialogHook):
            def __init__(self):
                wx.ModalDialogHook.__init__(self)
                self.counter = 0

            def Enter(self, dialog):
                self.counter += 1
                return wx.ID_OK

            def Exit(self, dialog):
                self.counter += 1  # not called because Enter didn't return wx.ID_NONE

        myHook = MyModalDialogHook()
        myHook.Register()

        wx.MessageBox("This should be auto-dismissed...", style=wx.OK|wx.CANCEL)
        self.assertEqual(myHook.counter, 1)

        myHook.Unregister()


#---------------------------------------------------------------------------

if __name__ == '__main__':
    unittest.main()