[FIX] web: prevent test_menus loading DiscussWidget if no mail module

Follow up on bd67479316

This test file is not respecting Odoo module dependencies.

If the module is not defined, calling `[Symbol.for("default")]` will crash.

Old require system didn't have this syntax, the similar guard was done just
before using the class.

closes odoo/odoo#69845

Signed-off-by: Xavier Dollé (xdo) <xdo@odoo.com>
This commit is contained in:
Sébastien Theys
2021-04-26 13:37:05 +00:00
parent d14299bc7b
commit 6855cc3d2c
+4 -1
View File
@@ -14,7 +14,10 @@
function createWebClientHooks() {
var AbstractController = odoo.__DEBUG__.services['web.AbstractController'];
var DiscussWidget = odoo.__DEBUG__.services['@mail/widgets/discuss/discuss'][Symbol.for("default")];
// This test file is not respecting Odoo module dependencies.
// The following module might not be loaded (eg. if mail is not installed).
const DiscussWidgetModule = odoo.__DEBUG__.services['@mail/widgets/discuss/discuss'];
const DiscussWidget = DiscussWidgetModule && DiscussWidgetModule[Symbol.for("default")];
var WebClient = odoo.__DEBUG__.services["web.WebClient"];
WebClient.include({