From d174216587197dcc6c4c9abcacb8e428a1f078bf Mon Sep 17 00:00:00 2001 From: Karen Tracey Date: Tue, 13 Mar 2012 01:01:22 +0000 Subject: [PATCH] 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 --- tests/modeltests/defer/tests.py | 15 ++++++++++++--- 1 file 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')