From: <rb...@us...> - 2013-09-30 17:47:46
|
Revision: 8530 http://sourceforge.net/p/htmlunit/code/8530 Author: rbri Date: 2013-09-30 17:47:42 +0000 (Mon, 30 Sep 2013) Log Message: ----------- add expectations for ie10 (frank danek) Modified Paths: -------------- trunk/htmlunit/src/main/java/com/gargoylesoftware/htmlunit/BrowserVersion.java trunk/htmlunit/src/test/java/com/gargoylesoftware/htmlunit/BrowserRunner.java trunk/htmlunit/src/test/java/com/gargoylesoftware/htmlunit/BrowserVersionClassRunner.java trunk/htmlunit/src/test/java/com/gargoylesoftware/htmlunit/BrowserVersionTest.java trunk/htmlunit/src/test/java/com/gargoylesoftware/htmlunit/WebDriverTestCase.java Modified: trunk/htmlunit/src/main/java/com/gargoylesoftware/htmlunit/BrowserVersion.java =================================================================== --- trunk/htmlunit/src/main/java/com/gargoylesoftware/htmlunit/BrowserVersion.java 2013-09-29 17:57:26 UTC (rev 8529) +++ trunk/htmlunit/src/main/java/com/gargoylesoftware/htmlunit/BrowserVersion.java 2013-09-30 17:47:42 UTC (rev 8530) @@ -66,6 +66,7 @@ * @author Marc Guillemot * @author Chris Erskine * @author Ahmed Ashour + * @author Frank Danek */ public class BrowserVersion implements Serializable, Cloneable { @@ -170,6 +171,11 @@ INTERNET_EXPLORER, "5.0 (compatible; MSIE 9.0; Windows NT 6.1)", "Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1)", 9, "IE9", null); + /** Internet Explorer 10. Work In Progress!!! */ + public static final BrowserVersion INTERNET_EXPLORER_10 = new BrowserVersion( + INTERNET_EXPLORER, "5.0 (compatible; MSIE 10.0; Windows NT 6.1; Trident/6.0)", + "Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.1; Trident/6.0)", 10, "IE10", null); + /** * Chrome 16. * @deprecated as of 2.12 @@ -199,6 +205,7 @@ INTERNET_EXPLORER_7.initDefaultFeatures(); INTERNET_EXPLORER_8.initDefaultFeatures(); INTERNET_EXPLORER_9.initDefaultFeatures(); + INTERNET_EXPLORER_10.initDefaultFeatures(); FIREFOX_3_6.initDefaultFeatures(); FIREFOX_10.initDefaultFeatures(); @@ -665,6 +672,11 @@ return nickname_; } + @Override + public String toString() { + return nickname_; + } + /** * Creates and return a copy of this object. Current instance and cloned * object can be modified independently. Modified: trunk/htmlunit/src/test/java/com/gargoylesoftware/htmlunit/BrowserRunner.java =================================================================== --- trunk/htmlunit/src/test/java/com/gargoylesoftware/htmlunit/BrowserRunner.java 2013-09-29 17:57:26 UTC (rev 8529) +++ trunk/htmlunit/src/test/java/com/gargoylesoftware/htmlunit/BrowserRunner.java 2013-09-30 17:47:42 UTC (rev 8530) @@ -45,7 +45,7 @@ * public class SomeTest extends WebTestCase { * * @Test - * @Browsers({Browser.FF17}) + * @Browsers({ Browser.FF17 }) * public void test() { * //your test case that succeeds with only Firefox 17 * } @@ -90,6 +90,9 @@ if (/*browsers.contains("hu") ||*/ browsers.contains("hu-ie9")) { runners_.add(new BrowserVersionClassRunner(klass, BrowserVersion.INTERNET_EXPLORER_9, false)); } + if (/*browsers.contains("hu") ||*/ browsers.contains("hu-ie10")) { + runners_.add(new BrowserVersionClassRunner(klass, BrowserVersion.INTERNET_EXPLORER_10, false)); + } if (/*browsers.contains("hu") || */browsers.contains("hu-chrome")) { runners_.add(new BrowserVersionClassRunner(klass, BrowserVersion.CHROME, false)); } @@ -116,6 +119,9 @@ if (browsers.contains("ie9")) { runners_.add(new BrowserVersionClassRunner(klass, BrowserVersion.INTERNET_EXPLORER_9, true)); } + if (browsers.contains("ie10")) { + runners_.add(new BrowserVersionClassRunner(klass, BrowserVersion.INTERNET_EXPLORER_10, true)); + } if (browsers.contains("chrome")) { runners_.add(new BrowserVersionClassRunner(klass, BrowserVersion.CHROME, true)); } @@ -186,6 +192,9 @@ /** Internet Explorer 9. */ IE9, + /** Internet Explorer 10. */ + IE10, + /** All versions of Firefox. */ FF, @@ -236,40 +245,43 @@ public static @interface Alerts { /** Alerts that is used for all browsers (if defined, the other values are ignored). */ - String[] value() default {EMPTY_DEFAULT }; + String[] value() default { EMPTY_DEFAULT }; /** Alerts for any Internet Explorer, it can be overridden by specific IE version. */ - String[] IE() default {EMPTY_DEFAULT }; + String[] IE() default { EMPTY_DEFAULT }; /** Alerts for Internet Explorer 6. If not defined, {@link #IE()} is used. */ - String[] IE6() default {EMPTY_DEFAULT }; + String[] IE6() default { EMPTY_DEFAULT }; /** Alerts for Internet Explorer 7. If not defined, {@link #IE()} is used. */ - String[] IE7() default {EMPTY_DEFAULT }; + String[] IE7() default { EMPTY_DEFAULT }; /** Alerts for Internet Explorer 8. If not defined, {@link #IE()} is used. */ - String[] IE8() default {EMPTY_DEFAULT }; + String[] IE8() default { EMPTY_DEFAULT }; /** Alerts for Internet Explorer 9. If not defined, {@link #IE()} is used. */ - String[] IE9() default {EMPTY_DEFAULT }; + String[] IE9() default { EMPTY_DEFAULT }; + /** Alerts for Internet Explorer 10. If not defined, {@link #IE()} is used. */ + String[] IE10() default { EMPTY_DEFAULT }; + /** Alerts for any Firefox, it can be overridden by specific FF version. */ - String[] FF() default {EMPTY_DEFAULT }; + String[] FF() default { EMPTY_DEFAULT }; /** Alerts for Firefox 3.6. If not defined, {@link #FF()} is used. */ - String[] FF3_6() default {EMPTY_DEFAULT }; + String[] FF3_6() default { EMPTY_DEFAULT }; /** Alerts for Firefox 10. If not defined, {@link #FF()} is used. */ - String[] FF10() default {EMPTY_DEFAULT }; + String[] FF10() default { EMPTY_DEFAULT }; /** Alerts for Firefox 17. If not defined, {@link #FF()} is used. */ - String[] FF17() default {EMPTY_DEFAULT }; + String[] FF17() default { EMPTY_DEFAULT }; /** Alerts for latest Chrome. */ - String[] CHROME() default{EMPTY_DEFAULT }; + String[] CHROME() default { EMPTY_DEFAULT }; /** The default alerts, if nothing more specific is defined. */ - String[] DEFAULT() default{EMPTY_DEFAULT }; + String[] DEFAULT() default { EMPTY_DEFAULT }; } /** @@ -291,7 +303,7 @@ } /** - * Indicates that the test runs manually in a real browser but not when using WebDriver to driver the browser. + * Indicates that the test runs manually in a real browser but not when using WebDriver to drive the browser. * @see Browser */ @Retention(RetentionPolicy.RUNTIME) Modified: trunk/htmlunit/src/test/java/com/gargoylesoftware/htmlunit/BrowserVersionClassRunner.java =================================================================== --- trunk/htmlunit/src/test/java/com/gargoylesoftware/htmlunit/BrowserVersionClassRunner.java 2013-09-29 17:57:26 UTC (rev 8529) +++ trunk/htmlunit/src/test/java/com/gargoylesoftware/htmlunit/BrowserVersionClassRunner.java 2013-09-30 17:47:42 UTC (rev 8530) @@ -82,6 +82,9 @@ else if (browserVersion_ == BrowserVersion.INTERNET_EXPLORER_9) { expectedAlerts = firstDefined(alerts.IE9(), alerts.IE(), alerts.DEFAULT()); } + else if (browserVersion_ == BrowserVersion.INTERNET_EXPLORER_10) { + expectedAlerts = firstDefined(alerts.IE10(), alerts.IE(), alerts.DEFAULT()); + } else if (browserVersion_ == BrowserVersion.FIREFOX_3_6) { expectedAlerts = firstDefined(alerts.FF3_6(), alerts.FF(), alerts.DEFAULT()); } @@ -256,6 +259,12 @@ } break; + case IE10: + if (browserVersion_ == BrowserVersion.INTERNET_EXPLORER_10) { + return true; + } + break; + case FF: if (browserVersion_.isFirefox()) { return true; Modified: trunk/htmlunit/src/test/java/com/gargoylesoftware/htmlunit/BrowserVersionTest.java =================================================================== --- trunk/htmlunit/src/test/java/com/gargoylesoftware/htmlunit/BrowserVersionTest.java 2013-09-29 17:57:26 UTC (rev 8529) +++ trunk/htmlunit/src/test/java/com/gargoylesoftware/htmlunit/BrowserVersionTest.java 2013-09-30 17:47:42 UTC (rev 8530) @@ -37,6 +37,7 @@ assertEquals(7.0f, BrowserVersion.INTERNET_EXPLORER_7.getBrowserVersionNumeric()); assertEquals(8.0f, BrowserVersion.INTERNET_EXPLORER_8.getBrowserVersionNumeric()); assertEquals(9.0f, BrowserVersion.INTERNET_EXPLORER_9.getBrowserVersionNumeric()); + assertEquals(10.0f, BrowserVersion.INTERNET_EXPLORER_10.getBrowserVersionNumeric()); assertEquals(16.0f, BrowserVersion.CHROME_16.getBrowserVersionNumeric()); assertEquals(29.0f, BrowserVersion.CHROME.getBrowserVersionNumeric()); } Modified: trunk/htmlunit/src/test/java/com/gargoylesoftware/htmlunit/WebDriverTestCase.java =================================================================== --- trunk/htmlunit/src/test/java/com/gargoylesoftware/htmlunit/WebDriverTestCase.java 2013-09-29 17:57:26 UTC (rev 8529) +++ trunk/htmlunit/src/test/java/com/gargoylesoftware/htmlunit/WebDriverTestCase.java 2013-09-30 17:47:42 UTC (rev 8530) @@ -109,6 +109,7 @@ private static String FF3_6_BIN_; private static String FF10_BIN_; private static String FF17_BIN_; + private static String IE_BIN_; private static String CHROME_BIN_; /** The driver cache. */ @@ -144,6 +145,7 @@ BROWSERS_PROPERTIES_ = Arrays.asList(properties.getProperty("browsers", "hu") .replaceAll(" ", "").toLowerCase().split(",")); + IE_BIN_ = properties.getProperty("ie.bin"); FF3_6_BIN_ = properties.getProperty("ff3.6.bin"); FF10_BIN_ = properties.getProperty("ff10.bin"); FF17_BIN_ = properties.getProperty("ff17.bin"); @@ -227,9 +229,10 @@ protected WebDriver buildWebDriver() throws IOException { if (useRealBrowser_) { if (getBrowserVersion().isIE()) { + System.setProperty("webdriver.ie.driver", IE_BIN_); return new InternetExplorerDriver(); } - if (BrowserVersion.CHROME.equals(getBrowserVersion())) { + if (BrowserVersion.CHROME == getBrowserVersion()) { if (CHROME_SERVICE_ == null) { CHROME_SERVICE_ = new ChromeDriverService.Builder() .usingDriverExecutable(new File(CHROME_BIN_)) @@ -244,13 +247,13 @@ } String ffBinary = null; - if (getBrowserVersion() == BrowserVersion.FIREFOX_3_6) { + if (BrowserVersion.FIREFOX_3_6 == getBrowserVersion()) { ffBinary = FF3_6_BIN_; } - else if (getBrowserVersion() == BrowserVersion.FIREFOX_10) { + else if (BrowserVersion.FIREFOX_10 == getBrowserVersion()) { ffBinary = FF10_BIN_; } - else if (getBrowserVersion() == BrowserVersion.FIREFOX_17) { + else if (BrowserVersion.FIREFOX_17 == getBrowserVersion()) { ffBinary = FF17_BIN_; } if (ffBinary != null) { |