diff options
author | Alex Hill <alex@hill.net.au> | 2016-05-20 18:21:20 +1000 |
---|---|---|
committer | Tim Graham <timograham@gmail.com> | 2016-05-27 17:45:08 -0400 |
commit | ff6c6feae17120c2c7df74fb6a9dc76826a1e233 (patch) | |
tree | 77ca60ad37897ddc32e8c6e9dd0aae8b387bf613 /tests/signals | |
parent | 9bb1b4b7f6b79096fc7418c3b7bb0118d44c373a (diff) | |
download | django-ff6c6feae17120c2c7df74fb6a9dc76826a1e233.tar.gz |
Fixed #26642 -- Made ModelSignal.disconnect() work with lazy references.
Diffstat (limited to 'tests/signals')
-rw-r--r-- | tests/signals/tests.py | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/tests/signals/tests.py b/tests/signals/tests.py index fd18b2191a..6452e138b4 100644 --- a/tests/signals/tests.py +++ b/tests/signals/tests.py @@ -301,3 +301,19 @@ class LazyModelRefTest(BaseSignalTest): }]) finally: signals.post_init.disconnect(self.receiver, sender=Created) + + @isolate_apps('signals', kwarg_name='apps') + def test_disconnect(self, apps): + received = [] + + def receiver(**kwargs): + received.append(kwargs) + + signals.post_init.connect(receiver, sender='signals.Created', apps=apps) + signals.post_init.disconnect(receiver, sender='signals.Created', apps=apps) + + class Created(models.Model): + pass + + Created() + self.assertEqual(received, []) |