Skip to content

Commit 8d8ffdd

Browse files
committed
[js] Add a test for setting firefox preferences for #3307
1 parent 4308e13 commit 8d8ffdd

2 files changed

Lines changed: 31 additions & 11 deletions

File tree

javascript/node/selenium-webdriver/lib/test/index.js

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,7 @@ var build = require('./build'),
2424
webdriver = require('../../'),
2525
flow = webdriver.promise.controlFlow(),
2626
firefox = require('../../firefox'),
27+
logging = require('../../lib/logging'),
2728
safari = require('../../safari'),
2829
remote = require('../../remote'),
2930
testing = require('../../testing'),
@@ -56,6 +57,11 @@ var noMarionette = /^0|false$/i.test(process.env['SELENIUM_GECKODRIVER']);
5657
var startServer = !!serverJar && !remoteUrl;
5758
var nativeRun = !serverJar && !remoteUrl;
5859

60+
if (/^1|true$/i.test(process.env['SELENIUM_VERBOSE'])) {
61+
logging.installConsoleHandler();
62+
logging.getLogger('webdriver.http').setLevel(logging.Level.ALL);
63+
}
64+
5965
var browsersToTest = (function() {
6066
var permitRemoteBrowsers = !!remoteUrl || !!serverJar;
6167
var permitUnknownBrowsers = !nativeRun;

javascript/node/selenium-webdriver/test/firefox/firefox_test.js

Lines changed: 25 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,8 @@ var firefox = require('../../firefox'),
2626
Context = require('../../firefox').Context,
2727
error = require('../..').error;
2828

29+
var {consume} = require('../../lib/promise');
30+
2931

3032
var JETPACK_EXTENSION = path.join(__dirname,
3133
'../../lib/test/data/firefox/jetpack-sample.xpi');
@@ -67,21 +69,33 @@ test.suite(function(env) {
6769
});
6870
}
6971

70-
test.it('can start Firefox with custom preferences', function*() {
71-
var profile = new firefox.Profile();
72-
profile.setPreference('general.useragent.override', 'foo;bar');
72+
describe('can start Firefox with custom preferences', function() {
73+
function runTest(opt_dir) {
74+
return consume(function*() {
75+
let profile = new firefox.Profile(opt_dir);
76+
profile.setPreference('general.useragent.override', 'foo;bar');
77+
78+
let options = new firefox.Options().setProfile(profile);
79+
80+
driver = env.builder().
81+
setFirefoxOptions(options).
82+
build();
7383

74-
var options = new firefox.Options().setProfile(profile);
84+
yield driver.get('data:text/html,<html><div>content</div></html>');
7585

76-
driver = env.builder().
77-
setFirefoxOptions(options).
78-
build();
86+
var userAgent = yield driver.executeScript(
87+
'return window.navigator.userAgent');
88+
assert(userAgent).equalTo('foo;bar');
89+
});
90+
}
7991

80-
yield driver.get('data:text/html,<html><div>content</div></html>');
92+
test.it('profile created from scratch', function() {
93+
return runTest();
94+
});
8195

82-
var userAgent = yield driver.executeScript(
83-
'return window.navigator.userAgent');
84-
assert(userAgent).equalTo('foo;bar');
96+
test.it('profile created from template', function() {
97+
return io.tmpDir().then(runTest);
98+
});
8599
});
86100

87101
test.it('can start Firefox with a jetpack extension', function() {

0 commit comments

Comments
 (0)