summaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
authorAnssi Kääriäinen <anssi.kaariainen@thl.fi>2015-02-16 09:49:19 +0200
committerTim Graham <timograham@gmail.com>2015-02-20 13:11:59 -0500
commit6f03a4ca91ed22b2ea42d5159a1ed00f347cf9aa (patch)
tree115834bb97180990cc93d0a25238686f591a37cb /tests
parent3a6c37fce452a3bbf185b5e58dd3e7c89b456b19 (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.py13
-rw-r--r--tests/proxy_models/models.py2
-rw-r--r--tests/proxy_models/tests.py14
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',