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.

PushErrorHandlingTest.java 1.6KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  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.push;
  17. import org.junit.Assert;
  18. import org.junit.Test;
  19. import org.openqa.selenium.By;
  20. import org.openqa.selenium.WebElement;
  21. import com.vaadin.testbench.elements.LabelElement;
  22. import com.vaadin.testbench.parallel.TestCategory;
  23. import com.vaadin.tests.tb3.MultiBrowserTest;
  24. @TestCategory("push")
  25. public class PushErrorHandlingTest extends MultiBrowserTest {
  26. @Test
  27. public void testErrorHandling() {
  28. setPush(true);
  29. openTestURL();
  30. vaadinElementById("npeButton").click();
  31. Assert.assertEquals(
  32. "An error! Unable to invoke method click in com.vaadin.shared.ui.button.ButtonServerRpc",
  33. $(LabelElement.class).get(1).getText());
  34. WebElement table = vaadinElementById("testtable");
  35. WebElement row = table
  36. .findElement(By.xpath("//div[text()='Click for NPE']"));
  37. row.click();
  38. Assert.assertEquals("Internal error",
  39. vaadinElement("Root/VNotification[0]/HTML[0]/domChild[0]")
  40. .getText());
  41. }
  42. }