import warnings from django.dispatch import Signal from django.test import SimpleTestCase a_signal = Signal(providing_args=['val']) def receiver_1_arg(val, **kwargs): return val class DispatcherTests(SimpleTestCase): def test_disconnect_weak_deprecated(self): a_signal.connect(receiver_1_arg) with warnings.catch_warnings(record=True) as warns: warnings.simplefilter('always') a_signal.disconnect(receiver_1_arg, weak=True) self.assertEqual(len(warns), 1) self.assertEqual( str(warns[0].message), 'Passing `weak` to disconnect has no effect.', )