mirror of
https://github.com/encode/django-rest-framework.git
synced 2025-08-03 20:10:10 +03:00
Using a model serializer in order to try and reproduce the problem.
This commit is contained in:
parent
56716f490b
commit
bedc0f7e50
|
@ -628,16 +628,26 @@ class DecimalFieldTest(TestCase):
|
|||
self.assertFalse(DecimalSerializer(data={'decimal_field': '9001.234'}).is_valid())
|
||||
|
||||
def test_decimal_is_not_quantized_when_decimal_places_is_none(self):
|
||||
class DecimalSerializer(serializers.Serializer):
|
||||
decimal_field = serializers.DecimalField(required=False)
|
||||
serializer = DecimalSerializer(data={})
|
||||
class LongDecimalFieldModel(models.Model):
|
||||
decimal_field = models.DecimalField(max_digits=20, decimal_places=10, default=0)
|
||||
|
||||
class DecimalSerializer((serializers.ModelSerializer):
|
||||
class Meta:
|
||||
model = LongDecimalFieldMode
|
||||
decimal_field = serializers.DecimalField(required=False, decimal_places=2)
|
||||
|
||||
self.assertTrue(serializer.is_valid())
|
||||
self.assertTrue(serializer.data['decimal_field'].as_tuple().exponent, 0)
|
||||
|
||||
def test_decimal_is_quantized_when_decimal_places_is_provided(self):
|
||||
class DecimalSerializer(serializers.Serializer):
|
||||
class LongDecimalFieldModel(models.Model):
|
||||
decimal_field = models.DecimalField(max_digits=20, decimal_places=10, default=0)
|
||||
|
||||
class DecimalSerializer((serializers.ModelSerializer):
|
||||
class Meta:
|
||||
model = LongDecimalFieldMode
|
||||
decimal_field = serializers.DecimalField(required=False, decimal_places=2)
|
||||
|
||||
serializer = DecimalSerializer(data={})
|
||||
|
||||
self.assertTrue(serializer.is_valid())
|
||||
|
|
Loading…
Reference in New Issue
Block a user