summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKaren Tracey <kmtracey@gmail.com>2012-03-13 01:01:22 +0000
committerKaren Tracey <kmtracey@gmail.com>2012-03-13 01:01:22 +0000
commitd174216587197dcc6c4c9abcacb8e428a1f078bf (patch)
treefecd2854d165e13188d99f06d3a24e151d68c064
parent37d04889108bb4334b873fa8b0b017343e15c5a1 (diff)
Refs #17876: enhanced new test to actually test underlying function, not just ensure trying to use it does not raise an exception. Thanks Przemek Lewandowski.
git-svn-id: http://code.djangoproject.com/svn/django/trunk@17695 bcc190cf-cafb-0310-a4f2-bffc1f526a37
-rw-r--r--tests/modeltests/defer/tests.py15
1 files changed, 12 insertions, 3 deletions
diff --git a/tests/modeltests/defer/tests.py b/tests/modeltests/defer/tests.py
index 88aac0c9e5..09138293af 100644
--- a/tests/modeltests/defer/tests.py
+++ b/tests/modeltests/defer/tests.py
@@ -146,6 +146,15 @@ class DeferTests(TestCase):
obj.save()
def test_defer_proxy(self):
- # using select related and only should not result in Exception
- for obj in ChildProxy.objects.all().select_related().only('id'):
- continue
+ """
+ Ensure select_related together with only on a proxy model behaves
+ as expected. See #17876.
+ """
+ related = Secondary.objects.create(first='x1', second='x2')
+ ChildProxy.objects.create(name='p1', value='xx', related=related)
+ children = ChildProxy.objects.all().select_related().only('id', 'name')
+ self.assertEqual(len(children), 1)
+ child = children[0]
+ self.assert_delayed(child, 1)
+ self.assertEqual(child.name, 'p1')
+ self.assertEqual(child.value, 'xx')