Fixed #26642 -- Made ModelSignal.disconnect() work with lazy references.

This commit is contained in:
Alex Hill 2016-05-20 18:21:20 +10:00 committed by Tim Graham
parent 9bb1b4b7f6
commit ff6c6feae1
2 changed files with 37 additions and 7 deletions

View file

@ -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, [])