diff --git a/src/org/labkey/test/components/html/BootstrapMenu.java b/src/org/labkey/test/components/html/BootstrapMenu.java index aa99e003d2..1c011e544c 100644 --- a/src/org/labkey/test/components/html/BootstrapMenu.java +++ b/src/org/labkey/test/components/html/BootstrapMenu.java @@ -20,6 +20,7 @@ import org.labkey.test.components.react.BaseBootstrapMenu; import org.labkey.test.util.LogMethod; import org.labkey.test.util.LoggedParam; +import org.openqa.selenium.StaleElementReferenceException; import org.openqa.selenium.WebDriver; import org.openqa.selenium.WebElement; @@ -110,6 +111,18 @@ public void clickSubMenu(int timeout, @LoggedParam String ... subMenuLabels) getWrapper().scrollIntoView(item); getWrapper().clickAndWait(item, timeout); + + if (0 == timeout) // if we aren't waiting to navigate, wait for the menu to close + WebDriverWrapper.waitFor(()-> { + try + { + return !isExpanded(); + } + catch (StaleElementReferenceException success) + { + return true; + } + }, 1000); } @LogMethod(quiet = true)