diff options
Diffstat (limited to 'tests')
| -rw-r--r-- | tests/expressions_case/tests.py | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/tests/expressions_case/tests.py b/tests/expressions_case/tests.py index c3b754fcae..91806c2764 100644 --- a/tests/expressions_case/tests.py +++ b/tests/expressions_case/tests.py @@ -1289,3 +1289,17 @@ class CaseDocumentationExamples(TestCase): ), {'regular': 2, 'gold': 1, 'platinum': 3} ) + + def test_filter_example(self): + a_month_ago = date.today() - timedelta(days=30) + a_year_ago = date.today() - timedelta(days=365) + self.assertQuerysetEqual( + Client.objects.filter( + registered_on__lte=Case( + When(account_type=Client.GOLD, then=a_month_ago), + When(account_type=Client.PLATINUM, then=a_year_ago), + ), + ), + [('Jack Black', 'P')], + transform=attrgetter('name', 'account_type') + ) |
