diff options
author | SwastikTripathi <88632085+SwastikTripathi@users.noreply.github.com> | 2021-11-12 22:23:25 +0530 |
---|---|---|
committer | Mariusz Felisiak <felisiak.mariusz@gmail.com> | 2021-11-19 09:47:57 +0100 |
commit | a7e7043c8746933dafce652507d3b821801cdc7d (patch) | |
tree | 4e6b78bfb1cf3e6f34cc261fb60668743912b898 /tests/backends | |
parent | 6fa2930573ff862a7f8ae8a11aa8bb7253fddeb7 (diff) | |
download | django-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.py | 12 |
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): |