def test_public_static_event(): """Test public static events.""" handler = GenericHandler() assert handler.value is None EventTest.PublicStaticEvent += handler.handler EventTest.OnPublicStaticEvent(EventArgsTest(10)) assert handler.value == 10
def testPublicStaticEvent(self): """Test public static events.""" handler = GenericHandler() self.failUnless(handler.value == None) EventTest.PublicStaticEvent += handler.handler EventTest.OnPublicStaticEvent(TestEventArgs(10)) self.failUnless(handler.value == 10)
def test_remove_multiple_static_handlers(): """Test removing multiple instances of a static handler.""" ob = EventTest() handler = MultipleHandler() h1 = handler.handler ob.PublicStaticEvent += h1 h2 = handler.handler ob.PublicStaticEvent += h2 ob.OnPublicStaticEvent(EventArgsTest(10)) assert handler.value == 20 ob.PublicStaticEvent -= h1 ob.OnPublicStaticEvent(EventArgsTest(10)) assert handler.value == 30 ob.PublicStaticEvent -= h2 ob.OnPublicStaticEvent(EventArgsTest(10)) assert handler.value == 30 # try again, removing in a different order. ob = EventTest() handler = MultipleHandler() h1 = handler.handler ob.PublicStaticEvent += h1 h2 = handler.handler ob.PublicStaticEvent += h2 ob.OnPublicStaticEvent(EventArgsTest(10)) assert handler.value == 20 ob.PublicStaticEvent -= h2 ob.OnPublicStaticEvent(EventArgsTest(10)) assert handler.value == 30 ob.PublicStaticEvent -= h1 ob.OnPublicStaticEvent(EventArgsTest(10)) assert handler.value == 30
def testRemoveMultipleStaticHandlers(self): """Test removing multiple instances of a static handler.""" object = EventTest() handler = MultipleHandler() h1 = handler.handler object.PublicStaticEvent += h1 h2 = handler.handler object.PublicStaticEvent += h2 object.OnPublicStaticEvent(TestEventArgs(10)) self.failUnless(handler.value == 20) object.PublicStaticEvent -= h1 object.OnPublicStaticEvent(TestEventArgs(10)) self.failUnless(handler.value == 30) object.PublicStaticEvent -= h2 object.OnPublicStaticEvent(TestEventArgs(10)) self.failUnless(handler.value == 30) # try again, removing in a different order. object = EventTest() handler = MultipleHandler() h1 = handler.handler object.PublicStaticEvent += h1 h2 = handler.handler object.PublicStaticEvent += h2 object.OnPublicStaticEvent(TestEventArgs(10)) self.failUnless(handler.value == 20) object.PublicStaticEvent -= h2 object.OnPublicStaticEvent(TestEventArgs(10)) self.failUnless(handler.value == 30) object.PublicStaticEvent -= h1 object.OnPublicStaticEvent(TestEventArgs(10)) self.failUnless(handler.value == 30)