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.

GridEditorCustomFieldTest.java 1.6KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. package com.vaadin.tests.components.grid;
  2. import static org.junit.Assert.assertEquals;
  3. import org.junit.Test;
  4. import org.openqa.selenium.Keys;
  5. import com.vaadin.testbench.TestBenchElement;
  6. import com.vaadin.testbench.elements.ComboBoxElement;
  7. import com.vaadin.testbench.elements.GridElement;
  8. import com.vaadin.testbench.elements.GridElement.GridEditorElement;
  9. import com.vaadin.testbench.parallel.TestCategory;
  10. import com.vaadin.tests.tb3.MultiBrowserTest;
  11. @TestCategory("grid")
  12. public class GridEditorCustomFieldTest extends MultiBrowserTest {
  13. @Test
  14. public void testCustomFieldWorksInEditorRow() {
  15. openTestURL();
  16. GridElement grid = $(GridElement.class).first();
  17. assertEquals("Stockholm", grid.getCell(0, 2).getText());
  18. grid.getCell(0, 1).doubleClick();
  19. GridEditorElement editor = grid.getEditor();
  20. TestBenchElement customField = editor.getField(2);
  21. ComboBoxElement comboBox = customField.$(ComboBoxElement.class).first();
  22. comboBox.selectByText("Oslo");
  23. editor.save();
  24. assertEquals("Oslo", grid.getCell(0, 2).getText());
  25. }
  26. @Test
  27. public void tabReachesCustomField() {
  28. openTestURL();
  29. GridElement grid = $(GridElement.class).first();
  30. grid.getCell(0, 1).doubleClick();
  31. GridEditorElement editor = grid.getEditor();
  32. editor.getField(0).sendKeys(Keys.TAB, Keys.TAB);
  33. ComboBoxElement comboBoxInCustomField = editor.getField(2)
  34. .$(ComboBoxElement.class).first();
  35. assertElementsEquals(comboBoxInCustomField.getInputField(),
  36. getActiveElement());
  37. }
  38. }