From 36e90d1f45a13f53ce25fdc2d9c04433b835c9af Mon Sep 17 00:00:00 2001 From: Claude Paroz Date: Sat, 4 Apr 2015 18:10:26 +0200 Subject: Stopped special-casing postgres-specific tests Refs #23879. --- tests/postgres_tests/fields.py | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) create mode 100644 tests/postgres_tests/fields.py (limited to 'tests/postgres_tests/fields.py') diff --git a/tests/postgres_tests/fields.py b/tests/postgres_tests/fields.py new file mode 100644 index 0000000000..e21ca1bfcb --- /dev/null +++ b/tests/postgres_tests/fields.py @@ -0,0 +1,31 @@ +""" +Indirection layer for PostgreSQL-specific fields, so the tests don't fail when +run with a backend other than PostgreSQL. +""" +from django.db import models + +try: + from django.contrib.postgres.fields import ( + ArrayField, BigIntegerRangeField, DateRangeField, DateTimeRangeField, + FloatRangeField, HStoreField, IntegerRangeField, + ) +except ImportError: + class DummyArrayField(models.Field): + def __init__(self, base_field, size=None, **kwargs): + super(DummyArrayField, self).__init__(**kwargs) + + def deconstruct(self): + name, path, args, kwargs = super(DummyArrayField, self).deconstruct() + kwargs.update({ + 'base_field': '', + 'size': 1, + }) + return name, path, args, kwargs + + ArrayField = DummyArrayField + BigIntegerRangeField = models.Field + DateRangeField = models.Field + DateTimeRangeField = models.Field + FloatRangeField = models.Field + HStoreField = models.Field + IntegerRangeField = models.Field -- cgit v1.3