def test_fail(self): """Test event failure.""" result = [] def failed(res): result.append(res) e = TwistedEvent() e.wait().addErrback(failed) self.assertEqual(result, []) f = Failure(Exception()) e.fail(f) self.assertEqual(result, [f]) self.assertRaises(AlreadyFiredError, e.fire) self.assertRaises(AlreadyFiredError, e.fail, f) e.wait().addErrback(failed) self.assertEqual(result, [f, f]) e.fail_if_not_fired(None) e = TwistedEvent() e.wait().addErrback(failed) e.fail_if_not_fired(f) self.assertEqual(result, [f, f, f])
def test_fire(self): """Test event success.""" result = [] def fired(res): result.append(res) e = TwistedEvent() e.wait().addCallback(fired) self.assertEqual(result, []) e.fire() self.assertEqual(result, [True]) self.assertRaises(AlreadyFiredError, e.fire) self.assertRaises(AlreadyFiredError, e.fail, None) e.wait().addCallback(fired) self.assertEqual(result, [True, True]) e.fail_if_not_fired(None)