diff --git a/addons/web/static/src/views/form/form_group/form_group.js b/addons/web/static/src/views/form/form_group/form_group.js index b7c783dceb2..760348d2b66 100644 --- a/addons/web/static/src/views/form/form_group/form_group.js +++ b/addons/web/static/src/views/form/form_group/form_group.js @@ -31,6 +31,10 @@ export class OuterGroup extends Group { } } OuterGroup.template = "web.Form.OuterGroup"; +OuterGroup.defaultProps = { + ...Group.defaultProps, + slots: [], +}; export class InnerGroup extends Group { getRows() { diff --git a/addons/web/static/tests/views/form/form_view_tests.js b/addons/web/static/tests/views/form/form_view_tests.js index 666823b4a12..b6fc9378e9e 100644 --- a/addons/web/static/tests/views/form/form_view_tests.js +++ b/addons/web/static/tests/views/form/form_view_tests.js @@ -299,6 +299,27 @@ QUnit.module("Views", (hooks) => { assert.containsNone(target, "label.o_form_label_empty:contains(timmy)"); }); + QUnit.test("form view with a group that contains an invisible group", async function (assert) { + await makeView({ + type: "form", + resModel: "partner", + serverData, + arch: ` +
`, + resId: 2, + }); + + assert.containsOnce(target, ".o_form_view .o_group"); + }); + QUnit.test("status bar rendering without buttons", async (assert) => { await makeView({ type: "form",