| 1470 | eq_(f2.mock.mock_calls, [call("x"), call("y")]) |
| 1471 | |
| 1472 | def test_once(self): |
| 1473 | Target = self._fixture() |
| 1474 | |
| 1475 | m1 = Mock() |
| 1476 | m2 = Mock() |
| 1477 | m3 = Mock() |
| 1478 | m4 = Mock() |
| 1479 | |
| 1480 | event.listen(Target, "event_one", m1) |
| 1481 | event.listen(Target, "event_one", m2, once=True) |
| 1482 | event.listen(Target, "event_one", m3, once=True) |
| 1483 | |
| 1484 | t1 = Target() |
| 1485 | t1.dispatch.event_one("x") |
| 1486 | t1.dispatch.event_one("y") |
| 1487 | |
| 1488 | event.listen(Target, "event_one", m4, once=True) |
| 1489 | t1.dispatch.event_one("z") |
| 1490 | t1.dispatch.event_one("q") |
| 1491 | |
| 1492 | eq_(m1.mock_calls, [call("x"), call("y"), call("z"), call("q")]) |
| 1493 | eq_(m2.mock_calls, [call("x")]) |
| 1494 | eq_(m3.mock_calls, [call("x")]) |
| 1495 | eq_(m4.mock_calls, [call("z")]) |
| 1496 | |
| 1497 | def test_once_unless_exception(self): |
| 1498 | Target = self._fixture() |