def format(self, value): try: if value is None: return text_type(utils.float_to_decimal(float(self.default))) return text_type(utils.float_to_decimal(float(value))) except ValueError as ve: raise MarshallingError(ve)
def format(self, value): try: dvalue = utils.float_to_decimal(float(value)) except ValueError as ve: raise MarshallingError(ve) if not dvalue.is_normal() and dvalue != ZERO: raise MarshallingError('Invalid Fixed precision number.') return text_type(dvalue.quantize(self.precision, rounding=ROUND_HALF_EVEN))
def test_arbitrary_field(self, user): field = fields.Arbitrary() user.age = 12.3 result = field.serialize('age', user) assert result == text_type(utils.float_to_decimal(user.age))
def test_arbitrary_field_deserialization(self): field = fields.Arbitrary() expected = text_type(utils.float_to_decimal(float(42))) assert field.deserialize('42') == expected
def format(self, value): dvalue = utils.float_to_decimal(float(value)) if not dvalue.is_normal() and dvalue != ZERO: raise MarshallingError('Invalid Fixed precision number.') return text_type( dvalue.quantize(self.precision, rounding=ROUND_HALF_EVEN))