summaryrefslogtreecommitdiff
path: root/tests/backends
diff options
context:
space:
mode:
authorSwastikTripathi <88632085+SwastikTripathi@users.noreply.github.com>2021-11-12 22:23:25 +0530
committerMariusz Felisiak <felisiak.mariusz@gmail.com>2021-11-19 09:47:57 +0100
commita7e7043c8746933dafce652507d3b821801cdc7d (patch)
tree4e6b78bfb1cf3e6f34cc261fb60668743912b898 /tests/backends
parent6fa2930573ff862a7f8ae8a11aa8bb7253fddeb7 (diff)
downloaddjango-a7e7043c8746933dafce652507d3b821801cdc7d.tar.gz
Fixed #33229 -- Fixed BaseDatabaseOperations.adapt_datetimefield_value()/adapt_timefield_value() crash with expressions.
Diffstat (limited to 'tests/backends')
-rw-r--r--tests/backends/base/test_operations.py12
1 files changed, 10 insertions, 2 deletions
diff --git a/tests/backends/base/test_operations.py b/tests/backends/base/test_operations.py
index b7b7b9e3fc..535cb20f41 100644
--- a/tests/backends/base/test_operations.py
+++ b/tests/backends/base/test_operations.py
@@ -3,7 +3,7 @@ import decimal
from django.core.management.color import no_style
from django.db import NotSupportedError, connection, transaction
from django.db.backends.base.operations import BaseDatabaseOperations
-from django.db.models import DurationField
+from django.db.models import DurationField, Value
from django.test import (
SimpleTestCase, TestCase, TransactionTestCase, override_settings,
skipIfDBFeature,
@@ -72,9 +72,17 @@ class SimpleDatabaseOperationTests(SimpleTestCase):
def test_adapt_timefield_value_none(self):
self.assertIsNone(self.ops.adapt_timefield_value(None))
- def test_adapt_datetimefield_value(self):
+ def test_adapt_timefield_value_expression(self):
+ value = Value(timezone.now().time())
+ self.assertEqual(self.ops.adapt_timefield_value(value), value)
+
+ def test_adapt_datetimefield_value_none(self):
self.assertIsNone(self.ops.adapt_datetimefield_value(None))
+ def test_adapt_datetimefield_value_expression(self):
+ value = Value(timezone.now())
+ self.assertEqual(self.ops.adapt_datetimefield_value(value), value)
+
def test_adapt_timefield_value(self):
msg = 'Django does not support timezone-aware times.'
with self.assertRaisesMessage(ValueError, msg):