summaryrefslogtreecommitdiff
path: root/tests/modeltests
diff options
context:
space:
mode:
authorJacob Kaplan-Moss <jacob@jacobian.org>2009-04-05 17:54:40 +0000
committerJacob Kaplan-Moss <jacob@jacobian.org>2009-04-05 17:54:40 +0000
commit734a3ac767ab5f8b752f3372e19ca2c7ada42979 (patch)
tree4227404f6faa9c3da178afd7926e9d591b94d6c5 /tests/modeltests
parent33173e98c1c9bbf0fd7c9ad3592f85c4be505dfb (diff)
[1.0.X] Fixed the test case from [10399] to be more robust against the order in which test cases are executed. Backport of r10402 from trunk.
git-svn-id: http://code.djangoproject.com/svn/django/branches/releases/1.0.X@10403 bcc190cf-cafb-0310-a4f2-bffc1f526a37
Diffstat (limited to 'tests/modeltests')
-rw-r--r--tests/modeltests/signals/models.py25
1 files changed, 16 insertions, 9 deletions
diff --git a/tests/modeltests/signals/models.py b/tests/modeltests/signals/models.py
index 06fd3a6fb3..ea8137f657 100644
--- a/tests/modeltests/signals/models.py
+++ b/tests/modeltests/signals/models.py
@@ -39,6 +39,14 @@ class PostDeleteHandler(object):
post_delete_test = PostDeleteHandler()
__test__ = {'API_TESTS':"""
+
+# Save up the number of connected signals so that we can check at the end
+# that all the signals we register get properly unregistered (#9989)
+>>> pre_signals = (len(models.signals.pre_save.receivers),
+... len(models.signals.post_save.receivers),
+... len(models.signals.pre_delete.receivers),
+... len(models.signals.post_delete.receivers))
+
>>> models.signals.pre_save.connect(pre_save_test)
>>> models.signals.post_save.connect(post_save_test)
>>> models.signals.pre_delete.connect(pre_delete_test)
@@ -97,14 +105,13 @@ instance.id is None: False
>>> models.signals.post_save.disconnect(post_save_test)
>>> models.signals.pre_save.disconnect(pre_save_test)
-# Make sure all the signals got removed properly (#9989)
->>> models.signals.post_delete.receivers
-[]
->>> models.signals.pre_delete.receivers
-[]
->>> models.signals.post_save.receivers
-[]
->>> models.signals.pre_save.receivers
-[]
+# Check that all our signals got disconnected properly.
+>>> post_signals = (len(models.signals.pre_save.receivers),
+... len(models.signals.post_save.receivers),
+... len(models.signals.pre_delete.receivers),
+... len(models.signals.post_delete.receivers))
+
+>>> pre_signals == post_signals
+True
"""}