Vous ne pouvez pas sélectionner plus de 25 sujets Les noms de sujets doivent commencer par une lettre ou un nombre, peuvent contenir des tirets ('-') et peuvent comporter jusqu'à 35 caractères.

VerifyBrowserVersionTest.java 2.0KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960
  1. package com.vaadin.tests;
  2. import static org.hamcrest.CoreMatchers.containsString;
  3. import static org.hamcrest.CoreMatchers.is;
  4. import static org.hamcrest.MatcherAssert.assertThat;
  5. import org.junit.Test;
  6. import org.openqa.selenium.remote.DesiredCapabilities;
  7. import com.vaadin.testbench.parallel.BrowserUtil;
  8. import com.vaadin.tests.tb3.MultiBrowserTest;
  9. public class VerifyBrowserVersionTest extends MultiBrowserTest {
  10. @Test
  11. public void verifyUserAgent() {
  12. openTestURL();
  13. DesiredCapabilities desiredCapabilities = getDesiredCapabilities();
  14. String userAgent = vaadinElementById("userAgent").getText();
  15. String browserIdentifier;
  16. if (BrowserUtil.isChrome(getDesiredCapabilities())) {
  17. // Chrome version does not necessarily match the desired version
  18. // because of auto updates...
  19. browserIdentifier = getExpectedUserAgentString(
  20. getDesiredCapabilities()) + "81";
  21. } else {
  22. browserIdentifier = getExpectedUserAgentString(desiredCapabilities)
  23. + desiredCapabilities.getVersion();
  24. }
  25. assertThat(userAgent, containsString(browserIdentifier));
  26. assertThat(vaadinElementById("touchDevice").getText(),
  27. is("Touch device? No"));
  28. }
  29. private String getExpectedUserAgentString(DesiredCapabilities dCap) {
  30. if (BrowserUtil.isIE(dCap)) {
  31. if (!BrowserUtil.isIE(dCap, 11)) {
  32. // IE8-10
  33. return "MSIE ";
  34. } else {
  35. // IE11
  36. return "Trident/7.0; rv:";
  37. }
  38. } else if (BrowserUtil.isFirefox(dCap)) {
  39. return "Firefox/";
  40. } else if (BrowserUtil.isChrome(dCap)) {
  41. return "Chrome/";
  42. } else if (BrowserUtil.isPhantomJS(dCap)) {
  43. return "PhantomJS/";
  44. }
  45. throw new UnsupportedOperationException(
  46. "Test is being run on unknown browser.");
  47. }
  48. }