diff options
| author | Simon Charette <simon.charette@zapier.com> | 2019-05-20 19:39:41 -0400 |
|---|---|---|
| committer | Mariusz Felisiak <felisiak.mariusz@gmail.com> | 2019-05-21 07:12:33 +0200 |
| commit | 2b582a7b84348aee0667cd3f9dc9793c04d958e0 (patch) | |
| tree | fab3987cd5426b2170a31f9eeeb241f63a7bd1b4 /tests/db_functions | |
| parent | 4d1420947e79bc89d266229feea305294ec896ee (diff) | |
Fixed #29396 -- Added indirect values support to __year lookups.
Thanks Windson Yang for the initial patch.
Diffstat (limited to 'tests/db_functions')
| -rw-r--r-- | tests/db_functions/datetime/test_extract_trunc.py | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/tests/db_functions/datetime/test_extract_trunc.py b/tests/db_functions/datetime/test_extract_trunc.py index f62bd0f0b2..854959aca6 100644 --- a/tests/db_functions/datetime/test_extract_trunc.py +++ b/tests/db_functions/datetime/test_extract_trunc.py @@ -135,6 +135,11 @@ class DateFunctionTests(TestCase): qs = DTModel.objects.filter(**{'start_datetime__%s__gte' % lookup: 2015}) self.assertEqual(qs.count(), 2) self.assertEqual(str(qs.query).lower().count('extract'), 0) + qs = DTModel.objects.annotate( + start_year=ExtractYear('start_datetime'), + ).filter(**{'end_datetime__%s__gte' % lookup: F('start_year')}) + self.assertEqual(qs.count(), 1) + self.assertGreaterEqual(str(qs.query).lower().count('extract'), 2) def test_extract_year_lessthan_lookup(self): start_datetime = datetime(2015, 6, 15, 14, 10) @@ -153,6 +158,11 @@ class DateFunctionTests(TestCase): qs = DTModel.objects.filter(**{'start_datetime__%s__lte' % lookup: 2016}) self.assertEqual(qs.count(), 2) self.assertEqual(str(qs.query).count('extract'), 0) + qs = DTModel.objects.annotate( + end_year=ExtractYear('end_datetime'), + ).filter(**{'start_datetime__%s__lte' % lookup: F('end_year')}) + self.assertEqual(qs.count(), 1) + self.assertGreaterEqual(str(qs.query).lower().count('extract'), 2) def test_extract_func(self): start_datetime = datetime(2015, 6, 15, 14, 30, 50, 321) |
