Commit cfa3d4a2 authored by Simon Charette's avatar Simon Charette
Browse files

[1.9.x] Refs #25745 -- Isolated some postgres array field check tests.

Backport of d95b22bd from master
parent 77e57908
Loading
Loading
Loading
Loading
+11 −0
Original line number Diff line number Diff line
@@ -4,6 +4,7 @@ import unittest
import uuid

from django import forms
from django.apps.registry import Apps
from django.core import exceptions, serializers, validators
from django.core.management import call_command
from django.db import IntegrityError, connection, models
@@ -328,18 +329,28 @@ class TestOtherTypesExactQuerying(PostgreSQLTestCase):
class TestChecks(PostgreSQLTestCase):

    def test_field_checks(self):
        test_apps = Apps(['postgres_tests'])

        class MyModel(PostgreSQLModel):
            field = ArrayField(models.CharField())

            class Meta:
                apps = test_apps

        model = MyModel()
        errors = model.check()
        self.assertEqual(len(errors), 1)
        self.assertEqual(errors[0].id, 'postgres.E001')

    def test_invalid_base_fields(self):
        test_apps = Apps(['postgres_tests'])

        class MyModel(PostgreSQLModel):
            field = ArrayField(models.ManyToManyField('postgres_tests.IntegerArrayModel'))

            class Meta:
                apps = test_apps

        model = MyModel()
        errors = model.check()
        self.assertEqual(len(errors), 1)