summaryrefslogtreecommitdiff
path: root/tests/basic
diff options
context:
space:
mode:
authorIan Foote <python@ian.feete.org>2020-11-22 22:27:57 +0000
committerMariusz Felisiak <felisiak.mariusz@gmail.com>2023-05-12 19:11:40 +0200
commit7414704e88d73dafbcfbb85f9bc54cb6111439d3 (patch)
treef51136b16e457d7f46e01ff3cc06308faf0923db /tests/basic
parent599f3e2cda50ab084915ffd08edb5ad6cad61415 (diff)
downloaddjango-7414704e88d73dafbcfbb85f9bc54cb6111439d3.tar.gz
Fixed #470 -- Added support for database defaults on fields.
Special thanks to Hannes Ljungberg for finding multiple implementation gaps. Thanks also to Simon Charette, Adam Johnson, and Mariusz Felisiak for reviews.
Diffstat (limited to 'tests/basic')
-rw-r--r--tests/basic/models.py4
-rw-r--r--tests/basic/tests.py6
2 files changed, 10 insertions, 0 deletions
diff --git a/tests/basic/models.py b/tests/basic/models.py
index 59a6a8d67f..b71b60a213 100644
--- a/tests/basic/models.py
+++ b/tests/basic/models.py
@@ -49,5 +49,9 @@ class PrimaryKeyWithDefault(models.Model):
uuid = models.UUIDField(primary_key=True, default=uuid.uuid4)
+class PrimaryKeyWithDbDefault(models.Model):
+ uuid = models.IntegerField(primary_key=True, db_default=1)
+
+
class ChildPrimaryKeyWithDefault(PrimaryKeyWithDefault):
pass
diff --git a/tests/basic/tests.py b/tests/basic/tests.py
index ea9228376c..3c2d1dead9 100644
--- a/tests/basic/tests.py
+++ b/tests/basic/tests.py
@@ -20,6 +20,7 @@ from .models import (
ArticleSelectOnSave,
ChildPrimaryKeyWithDefault,
FeaturedArticle,
+ PrimaryKeyWithDbDefault,
PrimaryKeyWithDefault,
SelfRef,
)
@@ -175,6 +176,11 @@ class ModelInstanceCreationTests(TestCase):
with self.assertNumQueries(1):
PrimaryKeyWithDefault().save()
+ def test_save_primary_with_db_default(self):
+ # An UPDATE attempt is skipped when a primary key has db_default.
+ with self.assertNumQueries(1):
+ PrimaryKeyWithDbDefault().save()
+
def test_save_parent_primary_with_default(self):
# An UPDATE attempt is skipped when an inherited primary key has
# default.