From 02e7a162a03801fce34c78d5d75fef0aaf997ab5 Mon Sep 17 00:00:00 2001 From: Tim Graham Date: Sat, 5 Apr 2025 12:47:53 -0400 Subject: [PATCH] Refs #36088, Refs #36260 - Added supports_expression_defaults checks in bulk_create() tests. --- tests/bulk_create/models.py | 6 ++++++ tests/bulk_create/tests.py | 5 ++++- 2 files changed, 10 insertions(+), 1 deletion(-) diff --git a/tests/bulk_create/models.py b/tests/bulk_create/models.py index 4b74b7ef56..bc9beba990 100644 --- a/tests/bulk_create/models.py +++ b/tests/bulk_create/models.py @@ -148,6 +148,12 @@ class DbDefaultModel(models.Model): name = models.CharField(max_length=10) created_at = models.DateTimeField(db_default=Now()) + class Meta: + required_db_features = {"supports_expression_defaults"} + class DbDefaultPrimaryKey(models.Model): id = models.DateTimeField(primary_key=True, db_default=Now()) + + class Meta: + required_db_features = {"supports_expression_defaults"} diff --git a/tests/bulk_create/tests.py b/tests/bulk_create/tests.py index 9bcf92e4cf..e1b7e42d14 100644 --- a/tests/bulk_create/tests.py +++ b/tests/bulk_create/tests.py @@ -845,6 +845,7 @@ class BulkCreateTests(TestCase): ], ) + @skipUnlessDBFeature("supports_expression_defaults") def test_db_default_field_excluded(self): # created_at is excluded when no db_default override is provided. with self.assertNumQueries(1) as ctx: @@ -869,7 +870,9 @@ class BulkCreateTests(TestCase): 2 if connection.features.can_return_rows_from_bulk_insert else 1, ) - @skipUnlessDBFeature("can_return_rows_from_bulk_insert") + @skipUnlessDBFeature( + "can_return_rows_from_bulk_insert", "supports_expression_defaults" + ) def test_db_default_primary_key(self): (obj,) = DbDefaultPrimaryKey.objects.bulk_create([DbDefaultPrimaryKey()]) self.assertIsInstance(obj.id, datetime)