Loading django/dispatch/dispatcher.py +3 −0 Original line number Diff line number Diff line Loading @@ -141,6 +141,9 @@ class Signal(object): del self.receivers[index] break def has_listeners(self, sender=None): return bool(self._live_receivers(_make_id(sender))) def send(self, sender, **named): """ Send signal from sender to all connected receivers. Loading tests/regressiontests/dispatch/tests/test_dispatcher.py +11 −0 Original line number Diff line number Diff line Loading @@ -126,6 +126,17 @@ class DispatcherTests(unittest.TestCase): a_signal.disconnect(receiver_3) self._testIsClean(a_signal) def test_has_listeners(self): self.assertIs(a_signal.has_listeners(), False) self.assertIs(a_signal.has_listeners(sender=object()), False) receiver_1 = Callable() a_signal.connect(receiver_1) self.assertIs(a_signal.has_listeners(), True) self.assertIs(a_signal.has_listeners(sender=object()), True) a_signal.disconnect(receiver_1) self.assertIs(a_signal.has_listeners(), False) self.assertIs(a_signal.has_listeners(sender=object()), False) class ReceiverTestCase(unittest.TestCase): """ Loading Loading
django/dispatch/dispatcher.py +3 −0 Original line number Diff line number Diff line Loading @@ -141,6 +141,9 @@ class Signal(object): del self.receivers[index] break def has_listeners(self, sender=None): return bool(self._live_receivers(_make_id(sender))) def send(self, sender, **named): """ Send signal from sender to all connected receivers. Loading
tests/regressiontests/dispatch/tests/test_dispatcher.py +11 −0 Original line number Diff line number Diff line Loading @@ -126,6 +126,17 @@ class DispatcherTests(unittest.TestCase): a_signal.disconnect(receiver_3) self._testIsClean(a_signal) def test_has_listeners(self): self.assertIs(a_signal.has_listeners(), False) self.assertIs(a_signal.has_listeners(sender=object()), False) receiver_1 = Callable() a_signal.connect(receiver_1) self.assertIs(a_signal.has_listeners(), True) self.assertIs(a_signal.has_listeners(sender=object()), True) a_signal.disconnect(receiver_1) self.assertIs(a_signal.has_listeners(), False) self.assertIs(a_signal.has_listeners(sender=object()), False) class ReceiverTestCase(unittest.TestCase): """ Loading