From 370cae07b86550178df8f101b59a3dfb386683b3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?R=C3=A9my=20Voet=20=28ryv=29?= Date: Fri, 21 Oct 2022 06:25:13 +0000 Subject: [PATCH] [FIX] test_performance: adapt query count of one2many operations MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Since https://github.com/odoo/odoo/pull/99415, query count for one2many operation was too high, fix it. closes odoo/odoo#103807 X-original-commit: 09acbbe9ca7cc524288589cb2f9dfcd30b244461 Signed-off-by: Vincent Schippefilt (vsc) Signed-off-by: Rémy Voet --- .../tests/test_performance.py | 24 +++++++++---------- 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/odoo/addons/test_performance/tests/test_performance.py b/odoo/addons/test_performance/tests/test_performance.py index d3192f3eb94..75fa600b675 100644 --- a/odoo/addons/test_performance/tests/test_performance.py +++ b/odoo/addons/test_performance/tests/test_performance.py @@ -135,7 +135,7 @@ class TestPerformance(SavepointCaseWithUserDemo): rec1.write({'line_ids': [Command.create({'value': 0})]}) self.assertEqual(len(rec1.line_ids), 1) - with self.assertQueryCount(5): + with self.assertQueryCount(4): self.env.invalidate_all() rec1.write({'line_ids': [Command.create({'value': val}) for val in range(1, 12)]}) self.assertEqual(len(rec1.line_ids), 12) @@ -143,23 +143,23 @@ class TestPerformance(SavepointCaseWithUserDemo): lines = rec1.line_ids # update N lines: O(N) queries - with self.assertQueryCount(6): + with self.assertQueryCount(5): self.env.invalidate_all() rec1.write({'line_ids': [Command.update(line.id, {'value': 42}) for line in lines[0]]}) self.assertEqual(rec1.line_ids, lines) - with self.assertQueryCount(26): + with self.assertQueryCount(25): self.env.invalidate_all() rec1.write({'line_ids': [Command.update(line.id, {'value': 42 + line.id}) for line in lines[1:]]}) self.assertEqual(rec1.line_ids, lines) # delete N lines: O(1) queries - with self.assertQueryCount(14): + with self.assertQueryCount(12): self.env.invalidate_all() rec1.write({'line_ids': [Command.delete(line.id) for line in lines[0]]}) self.assertEqual(rec1.line_ids, lines[1:]) - with self.assertQueryCount(12): + with self.assertQueryCount(11): self.env.invalidate_all() rec1.write({'line_ids': [Command.delete(line.id) for line in lines[1:]]}) self.assertFalse(rec1.line_ids) @@ -169,12 +169,12 @@ class TestPerformance(SavepointCaseWithUserDemo): lines = rec1.line_ids # unlink N lines: O(1) queries - with self.assertQueryCount(14): + with self.assertQueryCount(12): self.env.invalidate_all() rec1.write({'line_ids': [Command.unlink(line.id) for line in lines[0]]}) self.assertEqual(rec1.line_ids, lines[1:]) - with self.assertQueryCount(12): + with self.assertQueryCount(11): self.env.invalidate_all() rec1.write({'line_ids': [Command.unlink(line.id) for line in lines[1:]]}) self.assertFalse(rec1.line_ids) @@ -185,30 +185,30 @@ class TestPerformance(SavepointCaseWithUserDemo): rec2 = self.env['test_performance.base'].create({'name': 'X'}) # link N lines from rec1 to rec2: O(1) queries - with self.assertQueryCount(8): + with self.assertQueryCount(7): self.env.invalidate_all() rec2.write({'line_ids': [Command.link(line.id) for line in lines[0]]}) self.assertEqual(rec1.line_ids, lines[1:]) self.assertEqual(rec2.line_ids, lines[0]) - with self.assertQueryCount(8): + with self.assertQueryCount(7): self.env.invalidate_all() rec2.write({'line_ids': [Command.link(line.id) for line in lines[1:]]}) self.assertFalse(rec1.line_ids) self.assertEqual(rec2.line_ids, lines) - with self.assertQueryCount(4): + with self.assertQueryCount(3): self.env.invalidate_all() rec2.write({'line_ids': [Command.link(line.id) for line in lines[0]]}) self.assertEqual(rec2.line_ids, lines) - with self.assertQueryCount(4): + with self.assertQueryCount(3): self.env.invalidate_all() rec2.write({'line_ids': [Command.link(line.id) for line in lines[1:]]}) self.assertEqual(rec2.line_ids, lines) # empty N lines in rec2: O(1) queries - with self.assertQueryCount(13): + with self.assertQueryCount(12): self.env.invalidate_all() rec2.write({'line_ids': [Command.clear()]}) self.assertFalse(rec2.line_ids)