MCPcopy
hub / github.com/sqlalchemy/sqlalchemy / test_once

Method test_once

test/base/test_events.py:1472–1495  ·  view source on GitHub ↗
(self)

Source from the content-addressed store, hash-verified

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()

Callers

nothing calls this directly

Calls 6

_fixtureMethod · 0.95
eq_Function · 0.90
callFunction · 0.85
TargetClass · 0.70
listenMethod · 0.45
event_oneMethod · 0.45

Tested by

no test coverage detected