You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

GridLayoutFocusOrderAfterShowChildTest.java 2.1KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071
  1. package com.vaadin.tests.components.gridlayout;
  2. import static org.junit.Assert.assertEquals;
  3. import java.io.IOException;
  4. import org.junit.Test;
  5. import org.openqa.selenium.Keys;
  6. import com.vaadin.testbench.elements.ButtonElement;
  7. import com.vaadin.testbench.elements.GridLayoutElement;
  8. import com.vaadin.testbench.elements.LabelElement;
  9. import com.vaadin.testbench.elements.TextFieldElement;
  10. import com.vaadin.tests.tb3.MultiBrowserTest;
  11. public class GridLayoutFocusOrderAfterShowChildTest extends MultiBrowserTest {
  12. @Test
  13. public void showComponentBreaksFocusOrderFirst()
  14. throws IOException, Exception {
  15. openTestURL();
  16. GridLayoutElement grid = $(GridLayoutElement.class).id("grid");
  17. $(ButtonElement.class).first().click();
  18. assertEquals("First", grid.$(LabelElement.class).first().getText());
  19. grid.$(TextFieldElement.class).first().focus();
  20. grid.$(TextFieldElement.class).first().sendKeys(Keys.TAB);
  21. assertEquals("t2",
  22. driver.switchTo().activeElement().getAttribute("id"));
  23. }
  24. @Test
  25. public void showComponentBreaksFocusOrderMiddle()
  26. throws IOException, Exception {
  27. openTestURL();
  28. GridLayoutElement grid = $(GridLayoutElement.class).id("grid");
  29. $(ButtonElement.class).get(1).click();
  30. assertEquals("Third", grid.$(LabelElement.class).get(1).getText());
  31. grid.$(TextFieldElement.class).first().focus();
  32. grid.$(TextFieldElement.class).first().sendKeys(Keys.TAB);
  33. assertEquals("t3",
  34. driver.switchTo().activeElement().getAttribute("id"));
  35. }
  36. @Test
  37. public void showComponentBreaksFocusOrderLast()
  38. throws IOException, Exception {
  39. openTestURL();
  40. GridLayoutElement grid = $(GridLayoutElement.class).id("grid");
  41. $(ButtonElement.class).get(2).click();
  42. assertEquals("Fifth", grid.$(LabelElement.class).get(2).getText());
  43. grid.$(TextFieldElement.class).get(1).focus();
  44. grid.$(TextFieldElement.class).get(1).sendKeys(Keys.TAB);
  45. assertEquals("t5",
  46. driver.switchTo().activeElement().getAttribute("id"));
  47. }
  48. }