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 35 36 37 38 39 40
|
import unittest
from unittests import wtc
import wx
#---------------------------------------------------------------------------
class MyEventFilter(wx.EventFilter):
def __init__(self):
wx.EventFilter.__init__(self)
wx.EvtHandler.AddFilter(self)
self.flag = False
def __del__(self):
wx.EvtHandler.RemoveFilter(self)
def FilterEvent(self, event):
t = event.GetEventType()
if t == wx.EVT_HELP.typeId:
self.flag = True
return self.Event_Skip
class eventfilter_Tests(wtc.WidgetTestCase):
def test_EventFilter_ctor(self):
with self.assertRaises(TypeError):
# it's an abstract class, so it can't be instantiated
evt = wx.EventFilter()
def test_EventFilter_subclass(self):
filter = MyEventFilter()
wx.PostEvent(self.frame, wx.PyCommandEvent(wx.EVT_HELP.typeId))
self.myYield()
self.assertTrue(filter.flag)
#---------------------------------------------------------------------------
if __name__ == '__main__':
unittest.main()
|