diff --git a/test/browserstack.js b/test/browserstack.js index bb641a8c..75017f4f 100644 --- a/test/browserstack.js +++ b/test/browserstack.js @@ -1,6 +1,7 @@ define([ './intern', -], function(config) { + 'intern/dojo/text!./config/firefox-profile.webcomponents.txt', +], function(config, firefoxProfileWebcomponents) { config.capabilities = { project: 'ally.js', @@ -32,6 +33,17 @@ define([ { browser: 'Firefox', browser_version: '42', os: 'OS X', os_version: 'Yosemite', platform: 'MAC', browserName: 'Firefox 42' }, { browser: 'Chrome', browser_version: '47', os: 'OS X', os_version: 'Yosemite', platform: 'MAC', browserName: 'Chrome 47' }, + { + browser: 'Firefox', + browser_version: '42', + os: 'WINDOWS', + os_version: '8.1', + platform: 'WIN', + browserName: 'Firefox 42 (ShadowDOM)', + // dom.webcomponents.enabled=true + firefox_profile: firefoxProfileWebcomponents, + }, + { browser: 'Safari', browser_version: '9.0', os: 'OS X', os_version: 'El Capitan', platform: 'MAC', browserName: 'Safari 9' }, { browser: 'Safari', browser_version: '8', os: 'OS X', os_version: 'Yosemite', platform: 'MAC', browserName: 'Safari 8' }, { browser: 'Safari', browser_version: '7.1', os: 'OS X', os_version: 'Mavericks', platform: 'MAC', browserName: 'Safari 7' }, diff --git a/test/config/README.md b/test/config/README.md new file mode 100644 index 00000000..f16a1701 --- /dev/null +++ b/test/config/README.md @@ -0,0 +1,21 @@ +# Generating Firefox Profiles + +It is possible to configure Firefox instance, e.g. to enable ShadowDOM support. [firefox-profile](https://www.npmjs.com/package/firefox-profile) can generate base64 encoded profiles including preferences and extensions. + +The generated profile can be passed to an environment entry for Firefox via the `firefox_profile` capability. + +--- + +```sh +npm install firefox-profile +``` + +```js +var FirefoxProfile = require('firefox-profile'); +var profile = new FirefoxProfile(); +profile.setPreference('dom.webcomponents.enabled', true); +profile.updatePreferences(); +profile.encoded(function(data) { + console.log(data); +}); +``` diff --git a/test/config/firefox-profile.webcomponents.txt b/test/config/firefox-profile.webcomponents.txt new file mode 100644 index 00000000..e0a4e8b3 --- /dev/null +++ b/test/config/firefox-profile.webcomponents.txt @@ -0,0 +1 @@ +UEsDBBQACAAIACq1QkgAAAAAAAAAAAAAAAAHAAAAdXNlci5qc5VWPW/bMBDd+ysKTy1QE22CLO3UJh0KFMgQBB0JijpZjCkeQR6t+N/3KFmJZclfGy28d9/3zilCkD5A9WmhvBfJl4pAqES4+PKxUjbC5x8f0iwInCoslPO4ImDLLFFi6yyqUjTKqRV/iDW2/2pwT6QCGbc6Tf/9/PenwA2EYEpgKIV0ENDgqEPeCqU1eOqiOo61xq0FenASXgmCU5ZN34wTHey+Yx20rXGc0HEwVhXjc6AzpRssRlVB9+bsxUVFjKCCrnfNmTeeE3HRoIuisKjX1kS61HjseIQBRICYGpBVwEbqoGI97+0tlRqsFboGvX6ASiVLv/q+n6aRKqJoVXCP7t5iPFOvPfQj9+y06ZjHKnnhedgY+XW+qaMWNMpyLHC6WoPdGhvItmULVvNbppCHZ6EKTPS9sMqtF2OfJWwI0UbBQ4xBc4fQ7jubjmmJjShNzNsluyktU+BZkXmP5rPf635e3Yee/KSZHZnx7aAMe3CLq9V4Dqfx7MF3+nByaqdwh2Sq7TPrwXz4DqjFsN5pxHK3RUuuOaUc/8wyDZSayDPvdcmFdaApb8DSQ1iyM5aNmeRHTF+bWG+XWeC8inFpwa0oD/3N3d24jUNQrJJRKGuxlcVWlv3UM2FaNs9L5CkKnl/ZYKnsmQkDzW2mraiMBX4JDIZbIz1ao7fs4XYcUDzERwpGkzykzRTvjZp3UIJjDczz1X0+sownKZ2oS3T6OnILas15XR5gJlzny4LaXJfamHGdt5iKxpA07vJKbgzwUVnJxrweO6Xj0o8IZ8MzK4eOVb2BpoDw1P08slFZpNaGxG4/hnu9E6LZCR8oBJY9UNienvApvF+RLvGD8zvFBnjh/T5y2V/URkUdjCe+650IdKX54+57vZ0Nf7hiWW/7yy7K1Pi9JKZL3UJRBsPKIvt/GjI5BkWOS2oIlGt7itQLp3SK2IaEDe/eOQrLUj7J734Mf+iUbeooZ8JiKPtSyJCcJNPkrbw9OAFdzlDwCfPochTTrP8DUEsHCDfsyiD5AgAAGwoAAFBLAQItAxQACAAIACq1Qkg37Mog+QIAABsKAAAHAAAAAAAAAAAAIACkgQAAAAB1c2VyLmpzUEsFBgAAAAABAAEANQAAAC4DAAAAAA== \ No newline at end of file