changeset 0d0a2672d70e in modules/account_invoice:5.2
details:
https://hg.tryton.org/modules/account_invoice?cmd=changeset;node=0d0a2672d70e
description:
Test both reverse operations to invalidate ratio and divisor
When the value has repeating decimal, the comparison may fail for one
comparison but we must consider as valid value.
issue8966
review265001002
(grafted from ff5a76bbdbc8d40f9fd8b5d9d03d2e599b9c5415)
diffstat:
payment_term.py | 9 ++++-----
1 files changed, 4 insertions(+), 5 deletions(-)
diffs (19 lines):
diff -r c5e1dea48d7a -r 0d0a2672d70e payment_term.py
--- a/payment_term.py Thu Jan 09 22:19:33 2020 +0100
+++ b/payment_term.py Mon Jan 20 11:06:23 2020 +0100
@@ -222,11 +222,10 @@
gettext('account_invoice'
'.msg_payment_term_invalid_ratio_divisor',
line=line.rec_name))
- ratio = line.ratio
- divisor = line.divisor
- line.on_change_ratio()
- line.on_change_divisor()
- if (line.divisor != divisor) or (line.ratio != ratio):
+ if (line.ratio != round(
+ 1 / line.divisor, cls.ratio.digits[1])
+ and line.divisor != round(
+ 1 / line.ratio, cls.divisor.digits[1])):
raise PaymentTermValidationError(
gettext('account_invoice'
'.msg_payment_term_invalid_ratio_divisor',