From d04e7302240f5be34cdd303002bc8e7dcd81f529 Mon Sep 17 00:00:00 2001 From: Vincent-Vega Date: Tue, 27 May 2014 08:48:50 -0700 Subject: Fixed #22711 -- Adjusted ordering checks to allow implicit relation fields. refs #19195. --- tests/invalid_models_tests/test_models.py | 34 +++++++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) (limited to 'tests') diff --git a/tests/invalid_models_tests/test_models.py b/tests/invalid_models_tests/test_models.py index 1338fcabcd..9cbaa8449c 100644 --- a/tests/invalid_models_tests/test_models.py +++ b/tests/invalid_models_tests/test_models.py @@ -415,6 +415,40 @@ class OtherModelTests(IsolatedModelsTestCase): ] self.assertEqual(errors, expected) + def test_ordering_pointing_to_missing_foreignkey_field(self): + # refs #22711 + + class Model(models.Model): + missing_fk_field = models.IntegerField() + + class Meta: + ordering = ("missing_fk_field_id",) + + errors = Model.check() + expected = [ + Error( + "'ordering' refers to the non-existent field 'missing_fk_field_id'.", + hint=None, + obj=Model, + id='models.E015', + ) + ] + self.assertEqual(errors, expected) + + def test_ordering_pointing_to_existing_foreignkey_field(self): + # refs #22711 + + class Parent(models.Model): + pass + + class Child(models.Model): + parent = models.ForeignKey(Parent) + + class Meta: + ordering = ("parent_id",) + + self.assertFalse(Child.check()) + @override_settings(TEST_SWAPPED_MODEL_BAD_VALUE='not-a-model') def test_swappable_missing_app_name(self): class Model(models.Model): -- cgit v1.3