From efe09fd7ad1e31c3329f397ad3ee227dbde3d255 Mon Sep 17 00:00:00 2001 From: Mathieu Duckerts-Antoine Date: Wed, 8 Feb 2023 11:42:15 +0000 Subject: [PATCH] [FIX] website_livechat: MockServer: patch _performRPC The new MockServer has no _mockCallButton method. Due to an issue with the patch function that does not reasign this._super correctly when entering the _mockCallButton function, a crash did occur. Part-of: odoo/odoo#112756 --- .../mock_server/controllers/dataset.js | 21 +++++++------------ 1 file changed, 7 insertions(+), 14 deletions(-) diff --git a/addons/website_livechat/static/tests/helpers/mock_server/controllers/dataset.js b/addons/website_livechat/static/tests/helpers/mock_server/controllers/dataset.js index f0c6f76442a..728cbddbf33 100644 --- a/addons/website_livechat/static/tests/helpers/mock_server/controllers/dataset.js +++ b/addons/website_livechat/static/tests/helpers/mock_server/controllers/dataset.js @@ -3,23 +3,16 @@ import { patch } from "@web/core/utils/patch"; import { MockServer } from "@web/../tests/helpers/mock_server"; -patch(MockServer.prototype, 'website_livechat/controllers/dataset', { +patch(MockServer.prototype, "website_livechat/controllers/dataset", { /** * @override */ - async _performRPC(route, args) { - if (route === '/web/dataset/call_button') { - return this._mockCallButton(args); - } - return this._super(route, args); - }, - /** - * Simulate a 'call_button' operation from a view. - * - * @override - */ - _mockCallButton({ args, kwargs, method, model }) { - if (model === 'website.visitor' && method === 'action_send_chat_request') { + async _performRPC(route, { args, method, model }) { + if ( + route === "/web/dataset/call_button" && + model === "website.visitor" && + method === "action_send_chat_request" + ) { return this._mockWebsiteVisitorActionSendChatRequest(args[0]); } return this._super(...arguments);