Big News: Socket raises $60M Series C at a $1B valuation to secure software supply chains for AI-driven development.Announcement
Sign In

selenium-node-webdriver

Package Overview
Dependencies
Maintainers
1
Versions
3
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

selenium-node-webdriver - npm Package Compare versions

Comparing version
0.1.0
to
0.1.1
+18
-25
examples/hello.js

@@ -1,26 +0,19 @@

var webdriver = require('selenium-node-webdriver');
var wd = require('selenium-node-webdriver');
var driver = new webdriver.Builder().
usingServer('http://localhost:4444/wd/hub').
withCapabilities({
'browserName': 'chrome',
'version': '',
'platform': 'ANY',
'javascriptEnabled': true
}).
build();
driver.get('http://www.google.com').
then(function () {
return driver.findElement(webdriver.By.name('q')).sendKeys('webdriver');
}).
then(function () {
return driver.findElement(webdriver.By.name('btnG')).click();
}).
then(function () {
return driver.getTitle();
}).
then(function (title) {
console.log('Title:', title);
driver.quit();
});
wd.build(null, function (driver) {
driver.get('http://www.google.com').
then(function () {
return driver.
findElement(wd.webdriver.By.name('q')).sendKeys('webdriver');
}).
then(function () {
return driver.findElement(wd.webdriver.By.name('btnG')).click();
}).
then(function () {
return driver.getTitle();
}).
then(function (title) {
console.log('Title:', title);
driver.quit();
});
});

@@ -1,1 +0,67 @@

module.exports = require('node/webdriver');
/* vim: set et ts=2 sts=2 sw=2: */
var http = require('http');
var webdriver = require('./node/webdriver');
var _ = require('lodash');
function pingWebDriverServer(server, maxAttempts, callback) {
var attempt = 0;
var url = 'http://' + server.host + ':' + server.port;
function ping() {
attempt++;
http.get(url + '/status', function (response) {
callback();
}).on('error', function (e) {
if (attempt < maxAttempts) {
setTimeout(ping, 500);
} else {
callback(e);
}
});
}
ping();
}
var defaultConfig = {
server: {
host: 'localhost',
port: 4444
},
capabilities: {
'browserName': 'chrome',
'version': '',
'platform': 'ANY',
'javascriptEnabled': true
}
};
function mergeDefaults(config, defaults) {
config = _.defaults(config || {}, defaults);
_.keys(defaults).forEach(function (v, k) {
if (_.isArray(v) || _.isObject(v)) {
config[k] = mergeDefaults(config[k], v);
}
});
return config;
}
module.exports.webdriver = webdriver;
module.exports.build = function (config, callback) {
if (!callback) {
callback = config;
config = {};
}
config = mergeDefaults(config, defaultConfig);
pingWebDriverServer(config.server, 5, function () {
callback(new webdriver.Builder().
usingServer(
'http://' + config.server.host + ':' + config.server.port + '/wd/hub').
withCapabilities(config.capabilities).
build());
});
};
{
"name": "selenium-node-webdriver",
"version": "0.1.0",
"version": "0.1.1",
"author": "Lon Ingram <lon@waterfallmobile.com>",
"description": "Node.js WebDriver client from the Selenium project",
"main": "./lib/node/webdriver",
"license": "http://www.apache.org/licenses/LICENSE-2.0"
"main": "./lib/index",
"license": "http://www.apache.org/licenses/LICENSE-2.0",
"dependencies": {
"lodash": "1.0.0-rc.3"
}
}

@@ -12,3 +12,2 @@ # selenium-node-webdriver

phantomjs --webdriver=4444 &
sleep 1
node node_modules/selenium-node-webdriver/examples/hello.js

@@ -24,3 +23,3 @@ ```

withCapabilities({
'browserName': 'chrome',
'browserName': 'phantomjs',
'version': '',

@@ -27,0 +26,0 @@ 'platform': 'ANY',