This commit is contained in:
totalo 2020-10-21 23:03:51 +08:00
parent 741babe2c8
commit eb1208389b
2 changed files with 18 additions and 1 deletions

View File

@ -45,7 +45,8 @@ public class Browser extends UserAgentInfo {
new Browser("Yammer Desktop", "AdobeAir", "([\\d\\w\\.\\-]+)\\/Yammer"), //
new Browser("Yammer Mobile", "Yammer[\\s]+([\\d\\w\\.\\-]+)", "Yammer[\\s]+([\\d\\w\\.\\-]+)"), //
new Browser("Apache HTTP Client", "Apache\\\\-HttpClient", "Apache\\-HttpClient\\/([\\d\\w\\.\\-]+)"), //
new Browser("BlackBerry", "BlackBerry", "BlackBerry[\\d]+\\/([\\d\\w\\.\\-]+)")//
new Browser("BlackBerry", "BlackBerry", "BlackBerry[\\d]+\\/([\\d\\w\\.\\-]+)"),//
new Browser("MicroMessenger", "MicroMessenger", "MicroMessenger\\/([\\d\\w\\.\\-]+)")//
);
private Pattern versionPattern;

View File

@ -188,4 +188,20 @@ public class UserAgentUtilTest {
Assert.assertEquals("Windows", ua.getPlatform().toString());
Assert.assertFalse(ua.isMobile());
}
/**
* https://github.com/looly/hutool/issues/1177
*/
@Test
public void parseMicroMessengerTest() {
String uaString = "Mozilla/5.0 (iPhone; CPU iPhone OS 11_0 like Mac OS X) AppleWebKit/604.1.38 (KHTML, like Gecko) Mobile/15A372 MicroMessenger/7.0.17(0x17001127) NetType/WIFI Language/zh_CN";
UserAgent ua = UserAgentUtil.parse(uaString);
Assert.assertEquals("MicroMessenger", ua.getBrowser().toString());
Assert.assertEquals("7.0.17", ua.getVersion());
Assert.assertEquals("Webkit", ua.getEngine().toString());
Assert.assertEquals("604.1.38", ua.getEngineVersion());
Assert.assertEquals("iPhone", ua.getOs().toString());
Assert.assertEquals("iPhone", ua.getPlatform().toString());
Assert.assertFalse(ua.isMobile());
}
}