From: Daniel Molkentin Date: Thu, 2 May 2019 18:47:45 +0000 (+0200) Subject: Fix amount fields may might not contain a decimal sign X-Git-Tag: v2.2.0~12^2 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=refs%2Fpull%2F67%2Fhead;p=thirdparty%2Fpython-fints.git Fix amount fields may might not contain a decimal sign Otherwise, this breaks with Deutsche Bank Previously accepted: 1000, 1000,1 Now accepted: 1000 1000, 1000,1 --- diff --git a/fints/fields.py b/fints/fields.py index 47d6139..39dcc33 100644 --- a/fints/fields.py +++ b/fints/fields.py @@ -150,8 +150,8 @@ class AmountField(FixedLengthMixin, DataElementField): return value _value = str(value) - if not re.match(r'^(?:0|[1-9]\d*),(?:\d*[1-9]|)$', _value): - raise TypeError("Only digits and ',' allowed for value of type 'float', no superfluous leading or trailing zeroes allowed: {!r}".format(value)) + if not re.match(r'^(?:0|[1-9]\d*)(?:,)?(?:\d*[1-9]|)$', _value): + raise TypeError("Only digits and ',' allowed for value of type 'decimal', no superfluous leading or trailing zeroes allowed: {!r}".format(value)) return decimal.Decimal(_value.replace(",", "."))