open(MENUTEST_ATTACHTOBODY_APP);
String menuItem3 = "actionItemAttachToBody3";
WebDriver driver = this.getDriver();
WebElement actionItem3 = driver.findElement(By.className(menuItem3));
// Need to make the screen bigger so WebDriver doesn't need to scroll
driver.manage().window().setSize(new Dimension(1366, 768));
String trigger = "triggerAttachToBody";
String menuList = "actionMenuAttachToBody";
String triggerGlobalId = auraUITestingUtil.getCmpGlobalIdGivenElementClassName(trigger);
String menuListGlobalId = auraUITestingUtil.getCmpGlobalIdGivenElementClassName(menuList);
WebElement menuLabel = driver.findElement(By.className(trigger));
WebElement menu = driver.findElement(By.className(menuList));
menuLabel.click();
assertTrue("Action Menu list should be expanded", menu.getAttribute("class").contains("visible"));
verifyMenuPositionedCorrectly(triggerGlobalId, menuListGlobalId,
"Menu List is not positioned correctly when the menuList rendered on the page");
String triggerLeftPosBeforeClick = auraUITestingUtil.getBoundingRectPropOfElement(triggerGlobalId, "left");
actionItem3.click();
String triggerLeftPosAfterClickOnItem2 = auraUITestingUtil
.getBoundingRectPropOfElement(triggerGlobalId, "left");
assertEquals("Menu Item position changed after clicking on Item2", triggerLeftPosBeforeClick,
triggerLeftPosAfterClickOnItem2);
int currentWidth = driver.manage().window().getSize().width;
int currentHeight = driver.manage().window().getSize().height;
driver.manage().window().setSize(new Dimension(currentWidth - 200, currentHeight - 100));
verifyMenuPositionedCorrectly(triggerGlobalId, menuListGlobalId,
"Menu List is not positioned correctly after the resize");
}