diff --git a/addons/web/static/tests/helpers/utils.js b/addons/web/static/tests/helpers/utils.js index df25268f64e..54e2ea9074e 100644 --- a/addons/web/static/tests/helpers/utils.js +++ b/addons/web/static/tests/helpers/utils.js @@ -1023,7 +1023,13 @@ export async function clickDropdown(target, fieldName) { } export async function clickOpenedDropdownItem(target, fieldName, itemContent) { - const dropdownItems = target.querySelectorAll(`[name='${fieldName}'] .dropdown ul li`); + const dropdowns = target.querySelectorAll(`[name='${fieldName}'] .dropdown .dropdown-menu`); + if (dropdowns.length === 0) { + throw new Error(`No dropdown found for field ${fieldName}`); + } else if (dropdowns.length > 1) { + throw new Error(`Found ${dropdowns.length} dropdowns for field ${fieldName}`); + } + const dropdownItems = dropdowns[0].querySelectorAll("li"); const indexToClick = Array.from(dropdownItems) .map((html) => html.textContent) .indexOf(itemContent); diff --git a/addons/web/static/tests/views/view_dialogs/select_create_dialog_tests.js b/addons/web/static/tests/views/view_dialogs/select_create_dialog_tests.js index a65373a5bbf..309b68ba4fd 100644 --- a/addons/web/static/tests/views/view_dialogs/select_create_dialog_tests.js +++ b/addons/web/static/tests/views/view_dialogs/select_create_dialog_tests.js @@ -2,10 +2,10 @@ import { click, + clickOpenedDropdownItem, getFixture, nextTick, editInput, - selectDropdownItem, patchWithCleanup, } from "@web/../tests/helpers/utils"; import { makeView, setupViewRegistries } from "@web/../tests/views/helpers"; @@ -261,6 +261,11 @@ QUnit.module("ViewDialogs", (hooks) => { QUnit.test("SelectCreateDialog cascade x2many in create mode", async function (assert) { assert.expect(5); + + patchWithCleanup(browser, { + setTimeout: (fn) => fn(), + }); + serverData.views = { "partner,false,form": `