Skip to content

Commit

Permalink
Merge pull request webrtc#1538 from fippo/selenium4
Browse files Browse the repository at this point in the history
test: update selenium to selenium@4
  • Loading branch information
fippo authored Apr 7, 2022
2 parents 69da7b7 + c7223c0 commit f70ec9b
Show file tree
Hide file tree
Showing 3 changed files with 60 additions and 155 deletions.
152 changes: 45 additions & 107 deletions package-lock.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,7 @@
"geckodriver": "^3.0.1",
"http-server": "^14.1.0",
"mocha": "^9.2.1",
"selenium-webdriver": "^3.6.0",
"selenium-webdriver": "^4.1.1",
"stylelint": "^14.5.3",
"stylelint-config-recommended": "^7.0.0",
"travis-multirunner": "^4.6.0"
Expand Down
61 changes: 14 additions & 47 deletions test/webdriver.js
Original file line number Diff line number Diff line change
Expand Up @@ -20,30 +20,21 @@ if (os.platform() === 'win32') {

function buildDriver(browser = process.env.BROWSER || 'chrome', options = {bver: process.env.BVER}) {
// Firefox options.
let profile;
profile = new firefox.Profile();
profile.setAcceptUntrustedCerts(true);

profile.setPreference('media.navigator.streams.fake', true);
profile.setPreference('media.navigator.permission.disabled', true);
profile.setPreference('xpinstall.signatures.required', false);
profile.setPreference('media.peerconnection.dtls.version.min', 771); // force DTLS 1.2

const firefoxOptions = new firefox.Options()
.setProfile(profile);
let firefoxPath;
if (options.firefoxpath) {
firefoxPath = options.firefoxpath;
firefoxPath = options.firefoxpath;
} else if (os.platform() == 'linux' && options.bver) {
firefoxPath = 'browsers/bin/firefox-' + options.bver;
} else {
if (os.platform() == 'linux' && options.bver) {
firefoxPath = 'browsers/bin/firefox-' + options.bver;
}
}
const firefoxBinary = new firefox.Binary(firefoxPath);
if (options.headless) {
firefoxBinary.addArguments('-headless');
firefoxPath = firefox.Channel.RELEASE;
}
firefoxOptions.setBinary(firefoxBinary);

const firefoxOptions = new firefox.Options()
.setPreference('media.navigator.streams.fake', true)
.setPreference('media.navigator.permission.disabled', true)
.setPreference('xpinstall.signatures.required', false)
.setPreference('media.peerconnection.dtls.version.min', 771)
.setBinary(firefoxPath);

// Chrome options.
let chromeOptions = new chrome.Options()
Expand All @@ -65,38 +56,14 @@ function buildDriver(browser = process.env.BROWSER || 'chrome', options = {bver:
const safariOptions = new safari.Options();
safariOptions.setTechnologyPreview(options.bver === 'unstable');

const loggingPreferences = new webdriver.logging.Preferences();
if (options.browserLogging) {
loggingPreferences.setLevel(webdriver.logging.Type.BROWSER, webdriver.logging.Level.ALL);
}

let driver = new webdriver.Builder()
const driver = new webdriver.Builder()
.setFirefoxOptions(firefoxOptions)
.setChromeOptions(chromeOptions)
.setSafariOptions(safariOptions)
.setLoggingPrefs(loggingPreferences)
.forBrowser(browser);
driver.getCapabilities().set('acceptInsecureCerts', true);

if (browser === 'chrome') {
driver.getCapabilities().set('goog:chromeOptions', chromeOptions);
}
if (browser === 'firefox') {
driver.getCapabilities().set('moz:firefoxOptions', firefoxOptions);
}
if (browser === 'firefox') {
driver.getCapabilities().set('marionette', true);
driver.getCapabilities().set('acceptInsecureCerts', true);
}
if (options.applicationName) {
driver.getCapabilities().set('applicationName', options.applicationName);
}

driver = driver.build();
// Set global executeAsyncScript() timeout (default is 0) to allow async
// callbacks to be caught in tests.
driver
.manage().timeouts().setScriptTimeout(5 * 1000);
return driver;
return driver.build();
}

module.exports = {
Expand Down

0 comments on commit f70ec9b

Please sign in to comment.