From 9b4e487a5c031ea94eeb9aaeb221591b6faa92b9 Mon Sep 17 00:00:00 2001 From: xmo-odoo Date: Fri, 8 Nov 2019 11:07:10 +0000 Subject: [PATCH] [FIX] point_of_sale: incorrect assertAlmostEqual The third parameter to assertAlmostEqual is a precision (places), not the assertion message. This goes unnoticed when using two objects which are strictly equal because assertAlmostEqual shortcuts if the two inputs are equal, before falling back on approximation. Since the parameters here are two integers, they're always going to be either identical or completely different, therefore the issue is only visible if the assertion fails, hiding the assertion error. * pass the message by keyword * replace assertAlmostEqual by assertEqual as the inputs are integers and integers can't really be "almost" equal closes odoo/odoo#40030 X-original-commit: f22e71771f18ecffb06d56ae892c7db1c3984e3c Signed-off-by: Xavier Morel (xmo) --- addons/point_of_sale/tests/test_pos_basic_config.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/addons/point_of_sale/tests/test_pos_basic_config.py b/addons/point_of_sale/tests/test_pos_basic_config.py index 607afafa47f..fa2bb6e01b7 100644 --- a/addons/point_of_sale/tests/test_pos_basic_config.py +++ b/addons/point_of_sale/tests/test_pos_basic_config.py @@ -394,7 +394,7 @@ class TestPoSBasicConfig(TestPoSCommon): session_move = self.pos_session.move_id sale_lines = session_move.line_ids.filtered(lambda line: line.account_id == self.sale_account) - self.assertAlmostEqual(len(sale_lines), 2, 'There should be lines for both sales and refund.') + self.assertEqual(len(sale_lines), 2, msg='There should be lines for both sales and refund.') self.assertAlmostEqual(sum(sale_lines.mapped('balance')), -110.0) receivable_line_bank = session_move.line_ids.filtered(lambda line: self.bank_pm.name in line.name)