diff options
author | Florian Dold <florian.dold@gmail.com> | 2017-05-27 17:36:13 +0200 |
---|---|---|
committer | Florian Dold <florian.dold@gmail.com> | 2017-05-27 17:36:13 +0200 |
commit | 5f466137ad6ac596600e3ff53c9b786815398445 (patch) | |
tree | f914c221874f0b16bf3def7ac01d59d1a99a3b0b /node_modules/selenium-webdriver/test/firefox | |
parent | c9f5ac8e763eda19aa0564179300cfff76785435 (diff) |
node_modules, clean up package.json
Diffstat (limited to 'node_modules/selenium-webdriver/test/firefox')
3 files changed, 0 insertions, 507 deletions
diff --git a/node_modules/selenium-webdriver/test/firefox/extension_test.js b/node_modules/selenium-webdriver/test/firefox/extension_test.js deleted file mode 100644 index 50936f7cd..000000000 --- a/node_modules/selenium-webdriver/test/firefox/extension_test.js +++ /dev/null @@ -1,96 +0,0 @@ -// Licensed to the Software Freedom Conservancy (SFC) under one -// or more contributor license agreements. See the NOTICE file -// distributed with this work for additional information -// regarding copyright ownership. The SFC licenses this file -// to you under the Apache License, Version 2.0 (the -// "License"); you may not use this file except in compliance -// with the License. You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, -// software distributed under the License is distributed on an -// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -// KIND, either express or implied. See the License for the -// specific language governing permissions and limitations -// under the License. - -'use strict'; - -var AdmZip = require('adm-zip'), - assert = require('assert'), - crypto = require('crypto'), - fs = require('fs'), - path = require('path'); - -var extension = require('../../firefox/extension'), - io = require('../../io'), - it = require('../../testing').it; - - -var JETPACK_EXTENSION = path.join(__dirname, - '../../lib/test/data/firefox/jetpack-sample.xpi'); -var NORMAL_EXTENSION = path.join(__dirname, - '../../lib/test/data/firefox/sample.xpi'); - -var JETPACK_EXTENSION_ID = 'jid1-EaXX7k0wwiZR7w@jetpack'; -var NORMAL_EXTENSION_ID = 'sample@seleniumhq.org'; - - -describe('extension', function() { - it('can install a jetpack xpi file', function() { - return io.tmpDir().then(function(dir) { - return extension.install(JETPACK_EXTENSION, dir).then(function(id) { - assert.equal(JETPACK_EXTENSION_ID, id); - var file = path.join(dir, id + '.xpi'); - assert.ok(fs.existsSync(file), 'no such file: ' + file); - assert.ok(!fs.statSync(file).isDirectory()); - - var copiedSha1 = crypto.createHash('sha1') - .update(fs.readFileSync(file)) - .digest('hex'); - - var goldenSha1 = crypto.createHash('sha1') - .update(fs.readFileSync(JETPACK_EXTENSION)) - .digest('hex'); - - assert.equal(copiedSha1, goldenSha1); - }); - }); - }); - - it('can install a normal xpi file', function() { - return io.tmpDir().then(function(dir) { - return extension.install(NORMAL_EXTENSION, dir).then(function(id) { - assert.equal(NORMAL_EXTENSION_ID, id); - - var file = path.join(dir, NORMAL_EXTENSION_ID); - assert.ok(fs.statSync(file).isDirectory()); - - assert.ok(fs.existsSync(path.join(file, 'chrome.manifest'))); - assert.ok(fs.existsSync(path.join(file, 'content/overlay.xul'))); - assert.ok(fs.existsSync(path.join(file, 'content/overlay.js'))); - assert.ok(fs.existsSync(path.join(file, 'install.rdf'))); - }); - }); - }); - - it('can install an extension from a directory', function() { - return io.tmpDir().then(function(srcDir) { - var buf = fs.readFileSync(NORMAL_EXTENSION); - new AdmZip(buf).extractAllTo(srcDir, true); - return io.tmpDir().then(function(dstDir) { - return extension.install(srcDir, dstDir).then(function(id) { - assert.equal(NORMAL_EXTENSION_ID, id); - - var dir = path.join(dstDir, NORMAL_EXTENSION_ID); - - assert.ok(fs.existsSync(path.join(dir, 'chrome.manifest'))); - assert.ok(fs.existsSync(path.join(dir, 'content/overlay.xul'))); - assert.ok(fs.existsSync(path.join(dir, 'content/overlay.js'))); - assert.ok(fs.existsSync(path.join(dir, 'install.rdf'))); - }); - }); - }); - }); -}); diff --git a/node_modules/selenium-webdriver/test/firefox/firefox_test.js b/node_modules/selenium-webdriver/test/firefox/firefox_test.js deleted file mode 100644 index dbf9910fa..000000000 --- a/node_modules/selenium-webdriver/test/firefox/firefox_test.js +++ /dev/null @@ -1,226 +0,0 @@ -// Licensed to the Software Freedom Conservancy (SFC) under one -// or more contributor license agreements. See the NOTICE file -// distributed with this work for additional information -// regarding copyright ownership. The SFC licenses this file -// to you under the Apache License, Version 2.0 (the -// "License"); you may not use this file except in compliance -// with the License. You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, -// software distributed under the License is distributed on an -// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -// KIND, either express or implied. See the License for the -// specific language governing permissions and limitations -// under the License. - -'use strict'; - -var path = require('path'); - -var firefox = require('../../firefox'), - io = require('../../io'), - test = require('../../lib/test'), - assert = require('../../testing/assert'), - Context = require('../../firefox').Context, - error = require('../..').error; - -var {consume} = require('../../lib/promise'); - - -var JETPACK_EXTENSION = path.join(__dirname, - '../../lib/test/data/firefox/jetpack-sample.xpi'); -var NORMAL_EXTENSION = path.join(__dirname, - '../../lib/test/data/firefox/sample.xpi'); - - -test.suite(function(env) { - describe('firefox', function() { - describe('Options', function() { - var driver; - - test.beforeEach(function() { - driver = null; - }); - - test.afterEach(function() { - if (driver) { - return driver.quit(); - } - }); - - /** - * Runs a test that requires Firefox Developer Edition. The test will be - * skipped if dev cannot be found on the current system. - */ - function runWithFirefoxDev(options, testFn) { - return firefox.Channel.AURORA.locate().then(exe => { - options.setBinary(exe); - driver = env.builder() - .setFirefoxOptions(options) - .build(); - return driver.call(testFn); - }, err => { - console.warn( - 'Skipping test: could not find Firefox Dev Edition: ' + err); - }); - } - - describe('can start Firefox with custom preferences', function() { - function runTest(opt_dir) { - return consume(function*() { - let profile = new firefox.Profile(opt_dir); - profile.setPreference('general.useragent.override', 'foo;bar'); - - let options = new firefox.Options().setProfile(profile); - - driver = env.builder(). - setFirefoxOptions(options). - build(); - - yield driver.get('data:text/html,<html><div>content</div></html>'); - - var userAgent = yield driver.executeScript( - 'return window.navigator.userAgent'); - assert(userAgent).equalTo('foo;bar'); - }); - } - - test.it('profile created from scratch', function() { - return runTest(); - }); - - test.it('profile created from template', function() { - return io.tmpDir().then(runTest); - }); - }); - - test.it('can start Firefox with a jetpack extension', function() { - let profile = new firefox.Profile(); - profile.addExtension(JETPACK_EXTENSION); - - let options = new firefox.Options().setProfile(profile); - - return runWithFirefoxDev(options, function*() { - yield loadJetpackPage(driver, - 'data:text/html;charset=UTF-8,<html><div>content</div></html>'); - - let text = - yield driver.findElement({id: 'jetpack-sample-banner'}).getText(); - assert(text).equalTo('Hello, world!'); - }); - }); - - test.it('can start Firefox with a normal extension', function() { - let profile = new firefox.Profile(); - profile.addExtension(NORMAL_EXTENSION); - - let options = new firefox.Options().setProfile(profile); - - return runWithFirefoxDev(options, function*() { - yield driver.get('data:text/html,<html><div>content</div></html>'); - - let footer = - yield driver.findElement({id: 'sample-extension-footer'}); - let text = yield footer.getText(); - assert(text).equalTo('Goodbye'); - }); - }); - - test.it('can start Firefox with multiple extensions', function() { - let profile = new firefox.Profile(); - profile.addExtension(JETPACK_EXTENSION); - profile.addExtension(NORMAL_EXTENSION); - - let options = new firefox.Options().setProfile(profile); - - return runWithFirefoxDev(options, function*() { - yield loadJetpackPage(driver, - 'data:text/html;charset=UTF-8,<html><div>content</div></html>'); - - let banner = - yield driver.findElement({id: 'jetpack-sample-banner'}).getText(); - assert(banner).equalTo('Hello, world!'); - - let footer = - yield driver.findElement({id: 'sample-extension-footer'}) - .getText(); - assert(footer).equalTo('Goodbye'); - }); - }); - - function loadJetpackPage(driver, url) { - // On linux the jetpack extension does not always run the first time - // we load a page. If this happens, just reload the page (a simple - // refresh doesn't appear to work). - return driver.wait(function() { - driver.get(url); - return driver.findElements({id: 'jetpack-sample-banner'}) - .then(found => found.length > 0); - }, 3000); - } - }); - - describe('binary management', function() { - var driver1, driver2; - - test.ignore(env.isRemote). - it('can start multiple sessions with single binary instance', function*() { - var options = new firefox.Options().setBinary(new firefox.Binary); - env.builder().setFirefoxOptions(options); - driver1 = yield env.builder().build(); - driver2 = yield env.builder().build(); - // Ok if this doesn't fail. - }); - - test.afterEach(function*() { - if (driver1) { - yield driver1.quit(); - } - - if (driver2) { - yield driver2.quit(); - } - }); - }); - - describe('context switching', function() { - var driver; - - test.beforeEach(function*() { - driver = yield env.builder().build(); - }); - - test.afterEach(function() { - if (driver) { - return driver.quit(); - } - }); - - test.ignore(() => !env.isMarionette). - it('can get context', function() { - return assert(driver.getContext()).equalTo(Context.CONTENT); - }); - - test.ignore(() => !env.isMarionette). - it('can set context', function*() { - yield driver.setContext(Context.CHROME); - let ctxt = yield driver.getContext(); - assert(ctxt).equalTo(Context.CHROME); - - yield driver.setContext(Context.CONTENT); - ctxt = yield driver.getContext(); - assert(ctxt).equalTo(Context.CONTENT); - }); - - test.ignore(() => !env.isMarionette). - it('throws on unknown context', function() { - return driver.setContext("foo").then(assert.fail, function(e) { - assert(e).instanceOf(error.InvalidArgumentError); - }); - }); - }); - - }); -}, {browsers: ['firefox']}); diff --git a/node_modules/selenium-webdriver/test/firefox/profile_test.js b/node_modules/selenium-webdriver/test/firefox/profile_test.js deleted file mode 100644 index de61c26b5..000000000 --- a/node_modules/selenium-webdriver/test/firefox/profile_test.js +++ /dev/null @@ -1,185 +0,0 @@ -// Licensed to the Software Freedom Conservancy (SFC) under one -// or more contributor license agreements. See the NOTICE file -// distributed with this work for additional information -// regarding copyright ownership. The SFC licenses this file -// to you under the Apache License, Version 2.0 (the -// "License"); you may not use this file except in compliance -// with the License. You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, -// software distributed under the License is distributed on an -// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -// KIND, either express or implied. See the License for the -// specific language governing permissions and limitations -// under the License. - -'use strict'; - -var AdmZip = require('adm-zip'), - assert = require('assert'), - fs = require('fs'), - path = require('path'); - -var promise = require('../..').promise, - Profile = require('../../firefox/profile').Profile, - decode = require('../../firefox/profile').decode, - loadUserPrefs = require('../../firefox/profile').loadUserPrefs, - io = require('../../io'); - - -var JETPACK_EXTENSION = path.join(__dirname, - '../../lib/test/data/firefox/jetpack-sample.xpi'); -var NORMAL_EXTENSION = path.join(__dirname, - '../../lib/test/data/firefox/sample.xpi'); - -var JETPACK_EXTENSION_ID = 'jid1-EaXX7k0wwiZR7w@jetpack.xpi'; -var NORMAL_EXTENSION_ID = 'sample@seleniumhq.org'; -var WEBDRIVER_EXTENSION_ID = 'fxdriver@googlecode.com'; - - - -describe('Profile', function() { - describe('setPreference', function() { - it('allows setting custom properties', function() { - var profile = new Profile(); - assert.equal(undefined, profile.getPreference('foo')); - - profile.setPreference('foo', 'bar'); - assert.equal('bar', profile.getPreference('foo')); - }); - - it('allows overriding mutable properties', function() { - var profile = new Profile(); - - profile.setPreference('browser.newtab.url', 'http://www.example.com'); - assert.equal('http://www.example.com', - profile.getPreference('browser.newtab.url')); - }); - - it('throws if setting a frozen preference', function() { - var profile = new Profile(); - assert.throws(function() { - profile.setPreference('app.update.auto', true); - }); - }); - }); - - describe('writeToDisk', function() { - it('copies template directory recursively', function() { - var templateDir; - return io.tmpDir().then(function(td) { - templateDir = td; - var foo = path.join(templateDir, 'foo'); - fs.writeFileSync(foo, 'Hello, world'); - - var bar = path.join(templateDir, 'subfolder/bar'); - fs.mkdirSync(path.dirname(bar)); - fs.writeFileSync(bar, 'Goodbye, world!'); - - return new Profile(templateDir).writeToDisk(); - }).then(function(profileDir) { - assert.notEqual(profileDir, templateDir); - - assert.equal('Hello, world', - fs.readFileSync(path.join(profileDir, 'foo'))); - assert.equal('Goodbye, world!', - fs.readFileSync(path.join(profileDir, 'subfolder/bar'))); - }); - }); - - it('does not copy lock files', function() { - return io.tmpDir().then(function(dir) { - fs.writeFileSync(path.join(dir, 'parent.lock'), 'lock'); - fs.writeFileSync(path.join(dir, 'lock'), 'lock'); - fs.writeFileSync(path.join(dir, '.parentlock'), 'lock'); - return new Profile(dir).writeToDisk(); - }).then(function(dir) { - assert.ok(fs.existsSync(dir)); - assert.ok(!fs.existsSync(path.join(dir, 'parent.lock'))); - assert.ok(!fs.existsSync(path.join(dir, 'lock'))); - assert.ok(!fs.existsSync(path.join(dir, '.parentlock'))); - }); - }); - - describe('user.js', function() { - - it('writes defaults', function() { - return new Profile().writeToDisk().then(function(dir) { - return loadUserPrefs(path.join(dir, 'user.js')); - }).then(function(prefs) { - // Just check a few. - assert.equal(false, prefs['app.update.auto']); - assert.equal(true, prefs['browser.EULA.override']); - assert.equal(false, prefs['extensions.update.enabled']); - assert.equal('about:blank', prefs['browser.newtab.url']); - assert.equal(30, prefs['dom.max_script_run_time']); - }); - }); - - it('merges template user.js into preferences', function() { - return io.tmpDir().then(function(dir) { - fs.writeFileSync(path.join(dir, 'user.js'), [ - 'user_pref("browser.newtab.url", "http://www.example.com")', - 'user_pref("dom.max_script_run_time", 1234)' - ].join('\n')); - - return new Profile(dir).writeToDisk(); - }).then(function(profile) { - return loadUserPrefs(path.join(profile, 'user.js')); - }).then(function(prefs) { - assert.equal('http://www.example.com', prefs['browser.newtab.url']); - assert.equal(1234, prefs['dom.max_script_run_time']); - }); - }); - - it('ignores frozen preferences when merging template user.js', - function() { - return io.tmpDir().then(function(dir) { - fs.writeFileSync(path.join(dir, 'user.js'), - 'user_pref("app.update.auto", true)'); - return new Profile(dir).writeToDisk(); - }).then(function(profile) { - return loadUserPrefs(path.join(profile, 'user.js')); - }).then(function(prefs) { - assert.equal(false, prefs['app.update.auto']); - }); - }); - }); - - describe('extensions', function() { - it('are copied into new profile directory', function() { - var profile = new Profile(); - profile.addExtension(JETPACK_EXTENSION); - profile.addExtension(NORMAL_EXTENSION); - - return profile.writeToDisk().then(function(dir) { - dir = path.join(dir, 'extensions'); - assert.ok(fs.existsSync(path.join(dir, JETPACK_EXTENSION_ID))); - assert.ok(fs.existsSync(path.join(dir, NORMAL_EXTENSION_ID))); - assert.ok(fs.existsSync(path.join(dir, WEBDRIVER_EXTENSION_ID))); - }); - }); - }); - }); - - describe('encode', function() { - it('excludes the bundled WebDriver extension', function() { - return new Profile().encode().then(function(data) { - return decode(data); - }).then(function(dir) { - assert.ok(fs.existsSync(path.join(dir, 'user.js'))); - assert.ok(fs.existsSync(path.join(dir, 'extensions'))); - return loadUserPrefs(path.join(dir, 'user.js')); - }).then(function(prefs) { - // Just check a few. - assert.equal(false, prefs['app.update.auto']); - assert.equal(true, prefs['browser.EULA.override']); - assert.equal(false, prefs['extensions.update.enabled']); - assert.equal('about:blank', prefs['browser.newtab.url']); - assert.equal(30, prefs['dom.max_script_run_time']); - }); - }); - }); -}); |