{"action":"opened","issue":{"url":"https://api.github.com/repos/serenity-bdd/serenity-core/issues/527","repository_url":"https://api.github.com/repos/serenity-bdd/serenity-core","labels_url":"https://api.github.com/repos/serenity-bdd/serenity-core/issues/527/labels{/name}","comments_url":"https://api.github.com/repos/serenity-bdd/serenity-core/issues/527/comments","events_url":"https://api.github.com/repos/serenity-bdd/serenity-core/issues/527/events","html_url":"https://github.com/serenity-bdd/serenity-core/issues/527","id":176590650,"number":527,"title":"Setting a web driver capability to a map using the serenity.driver.capabilities system property","user":{"login":"regwhitton","id":11613057,"avatar_url":"https://avatars.githubusercontent.com/u/11613057?v=3","gravatar_id":"","url":"https://api.github.com/users/regwhitton","html_url":"https://github.com/regwhitton","followers_url":"https://api.github.com/users/regwhitton/followers","following_url":"https://api.github.com/users/regwhitton/following{/other_user}","gists_url":"https://api.github.com/users/regwhitton/gists{/gist_id}","starred_url":"https://api.github.com/users/regwhitton/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/regwhitton/subscriptions","organizations_url":"https://api.github.com/users/regwhitton/orgs","repos_url":"https://api.github.com/users/regwhitton/repos","events_url":"https://api.github.com/users/regwhitton/events{/privacy}","received_events_url":"https://api.github.com/users/regwhitton/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":0,"created_at":"2016-09-13T09:19:45Z","updated_at":"2016-09-13T09:19:45Z","closed_at":null,"body":"Hello.\r\n\r\nI am currently trying to use Chrome's mobile emulation to test a mobile site.  This is supported by ChromeDriver as documented here: [Mobile Emulation](https://sites.google.com/a/chromium.org/chromedriver/mobile-emulation).  This shows setting the chromeOptions capability to a map of values.\r\n\r\nCurrently Serenity's [serenity.driver.capabilities](https://github.com/serenity-bdd/serenity-documentation/blob/master/src/asciidoc/system-props.adoc) allows us to pass driver capabilites which are of type  String, Integer, Boolean and java.util.List.  This is done within [CapabilitySet.asObject()](https://github.com/serenity-bdd/serenity-core/blob/master/serenity-core/src/main/java/net/thucydides/core/webdriver/CapabilitySet.java#L53).\r\n\r\nCould CapabilitySet be extended to also allow a java.util.Map to also be passed, so that mobile emulation could be enabled by setting the serenity.driver.capabilities property to something like:\r\n\r\n`serenity.driver.capabilities=chromeOptions:{mobileEmulation:{deviceName:'Google Nexus 5',userAgent:'Mozilla/5.0 (Linux; Android 4.2.1; en-us; Nexus 5 Build/JOP40D) AppleWebKit/535.19 (KHTML, like Gecko) Chrome/18.0.1025.166 Mobile Safari/535.19'}}`"}}
{"actor":{"display_login":"regwhitton"}}