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.

GridDefaultSelectionModeTest.java 2.6KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384
  1. /*
  2. * Copyright 2000-2016 Vaadin Ltd.
  3. *
  4. * Licensed under the Apache License, Version 2.0 (the "License"); you may not
  5. * use this file except in compliance with the License. You may obtain a copy of
  6. * the License at
  7. *
  8. * http://www.apache.org/licenses/LICENSE-2.0
  9. *
  10. * Unless required by applicable law or agreed to in writing, software
  11. * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
  12. * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
  13. * License for the specific language governing permissions and limitations under
  14. * the License.
  15. */
  16. package com.vaadin.tests.components.grid;
  17. import static org.junit.Assert.assertFalse;
  18. import static org.junit.Assert.assertTrue;
  19. import org.junit.Test;
  20. import com.vaadin.testbench.elements.ButtonElement;
  21. import com.vaadin.testbench.elements.GridElement;
  22. import com.vaadin.testbench.elements.GridElement.GridCellElement;
  23. import com.vaadin.tests.tb3.MultiBrowserTest;
  24. public class GridDefaultSelectionModeTest extends MultiBrowserTest {
  25. @Test
  26. public void testSelectionFromServer() {
  27. setDebug(true);
  28. openTestURL();
  29. $(ButtonElement.class).caption("Select on server").first().click();
  30. assertTrue("Row should be selected.",
  31. $(LegacyGridElement.class).first().getRow(0).isSelected());
  32. $(ButtonElement.class).caption("Deselect on server").first().click();
  33. assertFalse("Row should not be selected.",
  34. $(LegacyGridElement.class).first().getRow(0).isSelected());
  35. assertNoErrorNotifications();
  36. }
  37. @Test
  38. public void testSelectionWithSort() {
  39. setDebug(true);
  40. openTestURL();
  41. GridElement grid = $(LegacyGridElement.class).first();
  42. grid.getCell(0, 0).click();
  43. GridCellElement header = grid.getHeaderCell(0, 1);
  44. header.click();
  45. header.click();
  46. assertTrue("Row should be selected.", grid.getRow(1).isSelected());
  47. assertNoErrorNotifications();
  48. }
  49. @Test
  50. public void testReselectDeselectedRow() {
  51. setDebug(true);
  52. openTestURL();
  53. $(ButtonElement.class).caption("Select on server").first().click();
  54. GridElement grid = $(LegacyGridElement.class).first();
  55. assertTrue("Row should be selected.", grid.getRow(0).isSelected());
  56. $(ButtonElement.class).caption("Deselect on server").first().click();
  57. assertFalse("Row should not be selected.", grid.getRow(0).isSelected());
  58. grid.getCell(0, 0).click();
  59. assertTrue("Row should be selected.", grid.getRow(0).isSelected());
  60. assertNoErrorNotifications();
  61. }
  62. }