diff options
| author | Anssi Kääriäinen <anssi.kaariainen@thl.fi> | 2015-02-16 09:49:19 +0200 |
|---|---|---|
| committer | Tim Graham <timograham@gmail.com> | 2015-02-20 13:11:59 -0500 |
| commit | 6f03a4ca91ed22b2ea42d5159a1ed00f347cf9aa (patch) | |
| tree | 115834bb97180990cc93d0a25238686f591a37cb /tests | |
| parent | 3a6c37fce452a3bbf185b5e58dd3e7c89b456b19 (diff) | |
[1.8.x] Fixed #24328 -- cleaned up Options._get_fields() implementation
Backport of bad5f262bf4a17f157808ec1aa225ba9c94c1eee from master
Diffstat (limited to 'tests')
| -rw-r--r-- | tests/model_meta/tests.py | 13 | ||||
| -rw-r--r-- | tests/proxy_models/models.py | 2 | ||||
| -rw-r--r-- | tests/proxy_models/tests.py | 14 |
3 files changed, 18 insertions, 11 deletions
diff --git a/tests/model_meta/tests.py b/tests/model_meta/tests.py index ef526b7bc4..c77a286308 100644 --- a/tests/model_meta/tests.py +++ b/tests/model_meta/tests.py @@ -228,11 +228,9 @@ class RelationTreeTests(TestCase): sorted([field.related_query_name() for field in Relation._meta._relation_tree if not field.rel.field.rel.is_hidden()]), sorted([ - 'fk_abstract_rel', 'fk_abstract_rel', 'fk_abstract_rel', 'fk_base_rel', 'fk_base_rel', - 'fk_base_rel', 'fk_concrete_rel', 'fk_concrete_rel', 'fo_abstract_rel', 'fo_abstract_rel', - 'fo_abstract_rel', 'fo_base_rel', 'fo_base_rel', 'fo_base_rel', 'fo_concrete_rel', - 'fo_concrete_rel', 'm2m_abstract_rel', 'm2m_abstract_rel', 'm2m_abstract_rel', - 'm2m_base_rel', 'm2m_base_rel', 'm2m_base_rel', 'm2m_concrete_rel', 'm2m_concrete_rel', + 'fk_abstract_rel', 'fk_base_rel', 'fk_concrete_rel', 'fo_abstract_rel', + 'fo_base_rel', 'fo_concrete_rel', 'm2m_abstract_rel', + 'm2m_base_rel', 'm2m_concrete_rel' ]) ) # Testing hidden related objects @@ -243,9 +241,8 @@ class RelationTreeTests(TestCase): 'BasePerson_following_base+', 'BasePerson_following_base+', 'BasePerson_friends_abstract+', 'BasePerson_friends_abstract+', 'BasePerson_friends_base+', 'BasePerson_friends_base+', 'BasePerson_m2m_abstract+', 'BasePerson_m2m_base+', 'Relating_basepeople+', - 'Relating_basepeople_hidden+', 'followers_abstract', 'followers_abstract', 'followers_abstract', - 'followers_base', 'followers_base', 'followers_base', 'friends_abstract_rel_+', 'friends_abstract_rel_+', - 'friends_abstract_rel_+', 'friends_base_rel_+', 'friends_base_rel_+', 'friends_base_rel_+', 'person', + 'Relating_basepeople_hidden+', 'followers_abstract', + 'followers_base', 'friends_abstract_rel_+', 'friends_base_rel_+', 'person', 'relating_basepeople', 'relating_baseperson', ]) ) diff --git a/tests/proxy_models/models.py b/tests/proxy_models/models.py index 90a542ffac..463fd2cd5b 100644 --- a/tests/proxy_models/models.py +++ b/tests/proxy_models/models.py @@ -158,7 +158,7 @@ class ProxyTrackerUser(TrackerUser): @python_2_unicode_compatible class Issue(models.Model): summary = models.CharField(max_length=255) - assignee = models.ForeignKey(TrackerUser) + assignee = models.ForeignKey(ProxyTrackerUser) def __str__(self): return ':'.join((self.__class__.__name__, self.summary,)) diff --git a/tests/proxy_models/tests.py b/tests/proxy_models/tests.py index 807200924e..2f423a9c34 100644 --- a/tests/proxy_models/tests.py +++ b/tests/proxy_models/tests.py @@ -3,7 +3,7 @@ from __future__ import unicode_literals from django.apps import apps from django.contrib import admin from django.contrib.contenttypes.models import ContentType -from django.core import checks, management +from django.core import checks, exceptions, management from django.db import DEFAULT_DB_ALIAS, models from django.db.models import signals from django.test import TestCase, override_settings @@ -327,8 +327,18 @@ class ProxyModelTests(TestCase): resp = StateProxy.objects.select_related().get(name='New South Wales') self.assertEqual(resp.name, 'New South Wales') + def test_filter_proxy_relation_reverse(self): + tu = TrackerUser.objects.create( + name='Contributor', status='contrib') + with self.assertRaises(exceptions.FieldError): + TrackerUser.objects.filter(issue=None), + self.assertQuerysetEqual( + ProxyTrackerUser.objects.filter(issue=None), + [tu], lambda x: x + ) + def test_proxy_bug(self): - contributor = TrackerUser.objects.create(name='Contributor', + contributor = ProxyTrackerUser.objects.create(name='Contributor', status='contrib') someone = BaseUser.objects.create(name='Someone') Bug.objects.create(summary='fix this', version='1.1beta', |
