summaryrefslogtreecommitdiff
path: root/tests/model_fields/test_integerfield.py
diff options
context:
space:
mode:
Diffstat (limited to 'tests/model_fields/test_integerfield.py')
-rw-r--r--tests/model_fields/test_integerfield.py13
1 files changed, 13 insertions, 0 deletions
diff --git a/tests/model_fields/test_integerfield.py b/tests/model_fields/test_integerfield.py
index b5517e4c56..bc370f18e2 100644
--- a/tests/model_fields/test_integerfield.py
+++ b/tests/model_fields/test_integerfield.py
@@ -14,6 +14,7 @@ from .models import (
class IntegerFieldTests(TestCase):
model = IntegerModel
documented_range = (-2147483648, 2147483647)
+ rel_db_type_class = models.IntegerField
@property
def backend_range(self):
@@ -154,15 +155,22 @@ class IntegerFieldTests(TestCase):
with self.assertRaisesMessage(exception, msg):
self.model.objects.create(value=value)
+ def test_rel_db_type(self):
+ field = self.model._meta.get_field('value')
+ rel_db_type = field.rel_db_type(connection)
+ self.assertEqual(rel_db_type, self.rel_db_type_class().db_type(connection))
+
class SmallIntegerFieldTests(IntegerFieldTests):
model = SmallIntegerModel
documented_range = (-32768, 32767)
+ rel_db_type_class = models.SmallIntegerField
class BigIntegerFieldTests(IntegerFieldTests):
model = BigIntegerModel
documented_range = (-9223372036854775808, 9223372036854775807)
+ rel_db_type_class = models.BigIntegerField
class PositiveSmallIntegerFieldTests(IntegerFieldTests):
@@ -173,6 +181,11 @@ class PositiveSmallIntegerFieldTests(IntegerFieldTests):
class PositiveIntegerFieldTests(IntegerFieldTests):
model = PositiveIntegerModel
documented_range = (0, 2147483647)
+ rel_db_type_class = (
+ models.PositiveIntegerField
+ if connection.features.related_fields_match_type
+ else models.IntegerField
+ )
@unittest.skipIf(connection.vendor == 'sqlite', "SQLite doesn't have a constraint.")
def test_negative_values(self):