From 4014e98b7d31ddf58933a10519113fa12552b93b Mon Sep 17 00:00:00 2001 From: Simon Lieschke Date: Fri, 27 Nov 2015 19:58:34 +1300 Subject: [PATCH] Add support for Microsoft Edge 13 https://blogs.windows.com/msedgedev/2015/09/21/understanding-versions-in-an-evergreen-browser/ --- src/main/java/eu/bitwalker/useragentutils/Browser.java | 7 ++++--- .../java/eu/bitwalker/useragentutils/BrowserTest.java | 9 +++++++-- 2 files changed, 11 insertions(+), 5 deletions(-) diff --git a/src/main/java/eu/bitwalker/useragentutils/Browser.java b/src/main/java/eu/bitwalker/useragentutils/Browser.java index 3b54ef9..c4acb29 100644 --- a/src/main/java/eu/bitwalker/useragentutils/Browser.java +++ b/src/main/java/eu/bitwalker/useragentutils/Browser.java @@ -97,9 +97,10 @@ public enum Browser { /** * Family of Microsoft Edge browsers. Pretends to be Chrome and claims to be webkit compatible. */ - EDGE(Manufacturer.MICROSOFT, null, 300, "Microsoft Edge", new String[] {"Edge"}, null, BrowserType.WEB_BROWSER, RenderingEngine.EDGE_HTML, "(?:Edge\\/((12)\\.([0-9]*)))"), - EDGE12(Manufacturer.MICROSOFT, Browser.EDGE, 301, "Microsoft Edge", new String[] {"Edge/12"}, new String[] {"Mobile"}, BrowserType.WEB_BROWSER, RenderingEngine.EDGE_HTML, "(?:Edge\\/((12)\\.([0-9]*)))" ), - EDGE_MOBILE12(Manufacturer.MICROSOFT, Browser.EDGE, 302, "Microsoft Edge Mobile", new String[] {"Mobile Safari", "Edge/12"}, null, BrowserType.MOBILE_BROWSER, RenderingEngine.EDGE_HTML, "(?:Edge\\/((12)\\.([0-9]*)))" ), + EDGE(Manufacturer.MICROSOFT, null, 300, "Microsoft Edge", new String[] {"Edge"}, null, BrowserType.WEB_BROWSER, RenderingEngine.EDGE_HTML, "(?:Edge\\/(([0-9]+)\\.([0-9]*)))"), + EDGE12(Manufacturer.MICROSOFT, Browser.EDGE, 301, "Microsoft Edge", new String[] {"Edge/12"}, new String[] {"Mobile"}, BrowserType.WEB_BROWSER, RenderingEngine.EDGE_HTML, null ), + EDGE13(Manufacturer.MICROSOFT, Browser.EDGE, 303, "Microsoft Edge", new String[] {"Edge/13"}, new String[] {"Mobile"}, BrowserType.WEB_BROWSER, RenderingEngine.EDGE_HTML, null ), + EDGE_MOBILE12(Manufacturer.MICROSOFT, Browser.EDGE, 302, "Microsoft Edge Mobile", new String[] {"Mobile Safari", "Edge/12"}, null, BrowserType.MOBILE_BROWSER, RenderingEngine.EDGE_HTML, null ), /** * Google Chrome browser diff --git a/src/test/java/eu/bitwalker/useragentutils/BrowserTest.java b/src/test/java/eu/bitwalker/useragentutils/BrowserTest.java index 78ce0a4..ccbea41 100644 --- a/src/test/java/eu/bitwalker/useragentutils/BrowserTest.java +++ b/src/test/java/eu/bitwalker/useragentutils/BrowserTest.java @@ -87,11 +87,15 @@ public class BrowserTest { "Mozilla/5.0 (Windows NT 6.3; WOW64; Trident/7.0; ASU2JS; rv:11.0) like Gecko", //64bit Win8 }; - String[] edgeClients = new String[] { + String[] edge12Clients = new String[] { "Mozilla/5.0 (Windows NT 6.4) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/36.0.1985.143 Safari/537.36 Edge/12.0", "Mozilla/5.0 (Windows NT 10.0) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/42.0.2311.135 Safari/537.36 Edge/12.10240", "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/42.0.2311.135 Safari/537.36 Edge/12.10532" }; + + String [] edge13Clients = new String[] { + "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/46.0.2486.0 Safari/537.36 Edge/13.10586" + }; String[] edgeMobileClients = new String[] { "Mozilla/5.0 (Windows Phone 10.0; Android 4.2.1; DEVICE INFO) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/42.0.2311.135 Mobile Safari/537.36 Edge/12.0" @@ -612,7 +616,8 @@ public class BrowserTest { testAgents(ie9clients, Browser.IE9); testAgents(ie10clients, Browser.IE10); testAgents(ie11clients, Browser.IE11); - testAgents(edgeClients, Browser.EDGE12); + testAgents(edge12Clients, Browser.EDGE12); + testAgents(edge13Clients, Browser.EDGE13); testAgents(edgeMobileClients, Browser.EDGE_MOBILE12); testAgents(ieTooOld, Browser.IE); testAgents(outlook2007, Browser.OUTLOOK2007);