diff options
| author | Josh Smeaton <josh.smeaton@gmail.com> | 2015-02-11 16:38:02 +1100 |
|---|---|---|
| committer | Josh Smeaton <josh.smeaton@gmail.com> | 2015-02-12 08:46:25 +1100 |
| commit | e2d6e14662d780383e18066a3182155fb5b7747b (patch) | |
| tree | 43f825b642e50edb8b849b0bf56d6636660caa31 /tests/expressions_case | |
| parent | 07cfe1bd822f4108b5029aef1615a17000d0b0dc (diff) | |
Refs #14030 -- Improved expression support for python values
Diffstat (limited to 'tests/expressions_case')
| -rw-r--r-- | tests/expressions_case/tests.py | 120 |
1 files changed, 60 insertions, 60 deletions
diff --git a/tests/expressions_case/tests.py b/tests/expressions_case/tests.py index 79fabeb8db..69f47b1d95 100644 --- a/tests/expressions_case/tests.py +++ b/tests/expressions_case/tests.py @@ -78,8 +78,8 @@ class CaseExpressionTests(TestCase): def test_annotate_without_default(self): self.assertQuerysetEqual( CaseTestModel.objects.annotate(test=Case( - When(integer=1, then=Value(1)), - When(integer=2, then=Value(2)), + When(integer=1, then=1), + When(integer=2, then=2), output_field=models.IntegerField(), )).order_by('pk'), [(1, 1), (2, 2), (3, None), (2, 2), (3, None), (3, None), (4, None)], @@ -244,9 +244,9 @@ class CaseExpressionTests(TestCase): self.assertQuerysetEqual( CaseTestModel.objects.annotate( test=Case( - When(integer=1, then=Value(2)), - When(integer=2, then=Value(1)), - default=Value(3), + When(integer=1, then=2), + When(integer=2, then=1), + default=3, output_field=models.IntegerField(), ) + 1, ).order_by('pk'), @@ -278,19 +278,19 @@ class CaseExpressionTests(TestCase): self.assertEqual( CaseTestModel.objects.aggregate( one=models.Sum(Case( - When(integer=1, then=Value(1)), + When(integer=1, then=1), output_field=models.IntegerField(), )), two=models.Sum(Case( - When(integer=2, then=Value(1)), + When(integer=2, then=1), output_field=models.IntegerField(), )), three=models.Sum(Case( - When(integer=3, then=Value(1)), + When(integer=3, then=1), output_field=models.IntegerField(), )), four=models.Sum(Case( - When(integer=4, then=Value(1)), + When(integer=4, then=1), output_field=models.IntegerField(), )), ), @@ -311,11 +311,11 @@ class CaseExpressionTests(TestCase): self.assertEqual( CaseTestModel.objects.aggregate( equal=models.Sum(Case( - When(integer2=F('integer'), then=Value(1)), + When(integer2=F('integer'), then=1), output_field=models.IntegerField(), )), plus_one=models.Sum(Case( - When(integer2=F('integer') + 1, then=Value(1)), + When(integer2=F('integer') + 1, then=1), output_field=models.IntegerField(), )), ), @@ -325,9 +325,9 @@ class CaseExpressionTests(TestCase): def test_filter(self): self.assertQuerysetEqual( CaseTestModel.objects.filter(integer2=Case( - When(integer=2, then=Value(3)), - When(integer=3, then=Value(4)), - default=Value(1), + When(integer=2, then=3), + When(integer=3, then=4), + default=1, output_field=models.IntegerField(), )).order_by('pk'), [(1, 1), (2, 3), (3, 4), (3, 4)], @@ -337,8 +337,8 @@ class CaseExpressionTests(TestCase): def test_filter_without_default(self): self.assertQuerysetEqual( CaseTestModel.objects.filter(integer2=Case( - When(integer=2, then=Value(3)), - When(integer=3, then=Value(4)), + When(integer=2, then=3), + When(integer=3, then=4), output_field=models.IntegerField(), )).order_by('pk'), [(2, 3), (3, 4), (3, 4)], @@ -381,8 +381,8 @@ class CaseExpressionTests(TestCase): def test_filter_with_join_in_condition(self): self.assertQuerysetEqual( CaseTestModel.objects.filter(integer=Case( - When(integer2=F('o2o_rel__integer') + 1, then=Value(2)), - When(integer2=F('o2o_rel__integer'), then=Value(3)), + When(integer2=F('o2o_rel__integer') + 1, then=2), + When(integer2=F('o2o_rel__integer'), then=3), output_field=models.IntegerField(), )).order_by('pk'), [(2, 3), (3, 3)], @@ -392,9 +392,9 @@ class CaseExpressionTests(TestCase): def test_filter_with_join_in_predicate(self): self.assertQuerysetEqual( CaseTestModel.objects.filter(integer2=Case( - When(o2o_rel__integer=1, then=Value(1)), - When(o2o_rel__integer=2, then=Value(3)), - When(o2o_rel__integer=3, then=Value(4)), + When(o2o_rel__integer=1, then=1), + When(o2o_rel__integer=2, then=3), + When(o2o_rel__integer=3, then=4), output_field=models.IntegerField(), )).order_by('pk'), [(1, 1), (2, 3), (3, 4), (3, 4)], @@ -422,8 +422,8 @@ class CaseExpressionTests(TestCase): f_plus_1=F('integer') + 1, ).filter( integer=Case( - When(integer2=F('integer'), then=Value(2)), - When(integer2=F('f_plus_1'), then=Value(3)), + When(integer2=F('integer'), then=2), + When(integer2=F('f_plus_1'), then=3), output_field=models.IntegerField(), ), ).order_by('pk'), @@ -437,9 +437,9 @@ class CaseExpressionTests(TestCase): f_plus_1=F('integer') + 1, ).filter( integer2=Case( - When(f_plus_1=3, then=Value(3)), - When(f_plus_1=4, then=Value(4)), - default=Value(1), + When(f_plus_1=3, then=3), + When(f_plus_1=4, then=4), + default=1, output_field=models.IntegerField(), ), ).order_by('pk'), @@ -469,8 +469,8 @@ class CaseExpressionTests(TestCase): max=Max('fk_rel__integer'), ).filter( integer=Case( - When(integer2=F('min'), then=Value(2)), - When(integer2=F('max'), then=Value(3)), + When(integer2=F('min'), then=2), + When(integer2=F('max'), then=3), ), ).order_by('pk'), [(3, 4, 3, 4), (2, 2, 2, 3), (3, 4, 3, 4)], @@ -483,8 +483,8 @@ class CaseExpressionTests(TestCase): max=Max('fk_rel__integer'), ).filter( integer=Case( - When(max=3, then=Value(2)), - When(max=4, then=Value(3)), + When(max=3, then=2), + When(max=4, then=3), ), ).order_by('pk'), [(2, 3, 3), (3, 4, 4), (2, 2, 3), (3, 4, 4), (3, 3, 4)], @@ -508,8 +508,8 @@ class CaseExpressionTests(TestCase): def test_update_without_default(self): CaseTestModel.objects.update( integer2=Case( - When(integer=1, then=Value(1)), - When(integer=2, then=Value(2)), + When(integer=1, then=1), + When(integer=2, then=2), ), ) self.assertQuerysetEqual( @@ -549,8 +549,8 @@ class CaseExpressionTests(TestCase): with self.assertRaisesMessage(FieldError, 'Joined field references are not permitted in this query'): CaseTestModel.objects.update( integer=Case( - When(integer2=F('o2o_rel__integer') + 1, then=Value(2)), - When(integer2=F('o2o_rel__integer'), then=Value(3)), + When(integer2=F('o2o_rel__integer') + 1, then=2), + When(integer2=F('o2o_rel__integer'), then=3), output_field=models.IntegerField(), ), ) @@ -570,8 +570,8 @@ class CaseExpressionTests(TestCase): def test_update_big_integer(self): CaseTestModel.objects.update( big_integer=Case( - When(integer=1, then=Value(1)), - When(integer=2, then=Value(2)), + When(integer=1, then=1), + When(integer=2, then=2), ), ) self.assertQuerysetEqual( @@ -599,9 +599,9 @@ class CaseExpressionTests(TestCase): def test_update_boolean(self): CaseTestModel.objects.update( boolean=Case( - When(integer=1, then=Value(True)), - When(integer=2, then=Value(True)), - default=Value(False), + When(integer=1, then=True), + When(integer=2, then=True), + default=False, ), ) self.assertQuerysetEqual( @@ -627,8 +627,8 @@ class CaseExpressionTests(TestCase): def test_update_date(self): CaseTestModel.objects.update( date=Case( - When(integer=1, then=Value(date(2015, 1, 1))), - When(integer=2, then=Value(date(2015, 1, 2))), + When(integer=1, then=date(2015, 1, 1)), + When(integer=2, then=date(2015, 1, 2)), ), ) self.assertQuerysetEqual( @@ -643,8 +643,8 @@ class CaseExpressionTests(TestCase): def test_update_date_time(self): CaseTestModel.objects.update( date_time=Case( - When(integer=1, then=Value(datetime(2015, 1, 1))), - When(integer=2, then=Value(datetime(2015, 1, 2))), + When(integer=1, then=datetime(2015, 1, 1)), + When(integer=2, then=datetime(2015, 1, 2)), ), ) self.assertQuerysetEqual( @@ -659,8 +659,8 @@ class CaseExpressionTests(TestCase): def test_update_decimal(self): CaseTestModel.objects.update( decimal=Case( - When(integer=1, then=Value(Decimal('1.1'))), - When(integer=2, then=Value(Decimal('2.2'))), + When(integer=1, then=Decimal('1.1')), + When(integer=2, then=Decimal('2.2')), ), ) self.assertQuerysetEqual( @@ -728,8 +728,8 @@ class CaseExpressionTests(TestCase): def test_update_float(self): CaseTestModel.objects.update( float=Case( - When(integer=1, then=Value(1.1)), - When(integer=2, then=Value(2.2)), + When(integer=1, then=1.1), + When(integer=2, then=2.2), ), ) self.assertQuerysetEqual( @@ -770,8 +770,8 @@ class CaseExpressionTests(TestCase): def test_update_null_boolean(self): CaseTestModel.objects.update( null_boolean=Case( - When(integer=1, then=Value(True)), - When(integer=2, then=Value(False)), + When(integer=1, then=True), + When(integer=2, then=False), ), ) self.assertQuerysetEqual( @@ -783,8 +783,8 @@ class CaseExpressionTests(TestCase): def test_update_positive_integer(self): CaseTestModel.objects.update( positive_integer=Case( - When(integer=1, then=Value(1)), - When(integer=2, then=Value(2)), + When(integer=1, then=1), + When(integer=2, then=2), ), ) self.assertQuerysetEqual( @@ -796,8 +796,8 @@ class CaseExpressionTests(TestCase): def test_update_positive_small_integer(self): CaseTestModel.objects.update( positive_small_integer=Case( - When(integer=1, then=Value(1)), - When(integer=2, then=Value(2)), + When(integer=1, then=1), + When(integer=2, then=2), ), ) self.assertQuerysetEqual( @@ -823,8 +823,8 @@ class CaseExpressionTests(TestCase): def test_update_small_integer(self): CaseTestModel.objects.update( small_integer=Case( - When(integer=1, then=Value(1)), - When(integer=2, then=Value(2)), + When(integer=1, then=1), + When(integer=2, then=2), ), ) self.assertQuerysetEqual( @@ -921,8 +921,8 @@ class CaseExpressionTests(TestCase): CaseTestModel.objects.update( fk=Case( - When(integer=1, then=Value(obj1.pk)), - When(integer=2, then=Value(obj2.pk)), + When(integer=1, then=obj1.pk), + When(integer=2, then=obj2.pk), ), ) self.assertQuerysetEqual( @@ -1065,15 +1065,15 @@ class CaseDocumentationExamples(TestCase): self.assertEqual( Client.objects.aggregate( regular=models.Sum(Case( - When(account_type=Client.REGULAR, then=Value(1)), + When(account_type=Client.REGULAR, then=1), output_field=models.IntegerField(), )), gold=models.Sum(Case( - When(account_type=Client.GOLD, then=Value(1)), + When(account_type=Client.GOLD, then=1), output_field=models.IntegerField(), )), platinum=models.Sum(Case( - When(account_type=Client.PLATINUM, then=Value(1)), + When(account_type=Client.PLATINUM, then=1), output_field=models.IntegerField(), )), ), |
