'If a before-phase trigger removes a during-phase trigger, the
during-phase trigger should not be run.'

def test_synchronousBeforeRemovesDuring(self):

    events = []
    self.event.addTrigger('before', (lambda : self.event.removeTrigger(duringHandle)))
    duringHandle = self.event.addTrigger('during', events.append, 'during')
    self.event.addTrigger('after', events.append, 'after')
    self.event.fireEvent()
    self.assertEqual(events, ['after'])
