New Case Study:See how Anthropic automated 95% of dependency reviews with Socket.Learn More
Socket
Sign inDemoInstall
Socket

webdriverio

Package Overview
Dependencies
Maintainers
2
Versions
754
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

webdriverio - npm Package Compare versions

Comparing version 5.0.0-alpha.14 to 5.0.0-beta.0

build/commands/element/getValue.js

29

build/commands/browser/setCookies.js

@@ -13,2 +13,31 @@ 'use strict';

/**
*
* Sets a [cookie](https://w3c.github.io/webdriver/#cookies) for current page. Make sure you are
* on the page that should receive the cookie. You can't set a cookie for an arbitrary page without
* being on that page.
*
* <example>
:setCookie.js
it('should set a cookie for the page', function () {
browser.url('/')
browser.setCookie({name: 'test', value: '123'});
var cookies = browser.getCookie();
console.log(cookies); // outputs: [{ name: 'test', value: '123', domain: 'www.example.com' }]
});
* </example>
*
* @alias browser.setCookie
* @param {Object} cookie cookie object
* @param {String} cookie.name The name of the cookie
* @param {String} cookie.value The cookie value
* @param {String} cookie.path (Optional) The cookie path
* @param {String} cookie.domain (Optional) The domain the cookie is visible to
* @param {Boolean} cookie.secure (Optional) Whether the cookie is a secure cookie
* @param {Boolean} cookie.httpOnly (Optional) Whether the cookie is an httpOnly cookie
* @param {Number} cookie.expiry (Optional) When the cookie expires, specified in seconds since midnight, January 1, 1970 UTC
* @uses protocol/addCookie
* @type cookie
*
*/
exports.default = (() => {

@@ -15,0 +44,0 @@ var _ref = _asyncToGenerator(function* (cookieObjs) {

2

build/commands/element/getSize.js

@@ -35,3 +35,3 @@ "use strict";

* @alias browser.getElementSize
* @param {String*} prop size to receive [optional] ("width" or "height")
* @param {String} prop size to receive [optional] ("width" or "height")
* @return {Object|Number} requested element size (`{ width: <Number>, height: <Number> }`) or actual width/height as number if prop param is given

@@ -38,0 +38,0 @@ * @uses protocol/elements, protocol/getElementRect

@@ -13,3 +13,3 @@ "use strict";

*
* Return true if the selected DOM-element is visible.
* Return true if the selected DOM-element is displayed.
*

@@ -22,28 +22,29 @@ * <example>

<div id="zeroOpacity" style="opacity: 0"></div>
:isVisible.js
it('should detect if an element is visible', function () {
:isDisplayed.js
it('should detect if an element is displayed', function () {
let elem = $('#notDisplayed');
let isVisible = elem.isVisible();
console.log(isVisible); // outputs: false
let isDisplayed = elem.isDisplayed();
console.log(isDisplayed); // outputs: false
elem = $('#notVisible');
isVisible = elem.isVisible();
console.log(isVisible); // outputs: false
isDisplayed = elem.isDisplayed();
console.log(isDisplayed); // outputs: false
elem = $('#notExisting');
isVisible = elem.isVisible();
console.log(isVisible); // outputs: false
isDisplayed = elem.isDisplayed();
console.log(isDisplayed); // outputs: false
elem = $('#notInViewport');
isVisible = elem.isVisible();
console.log(isVisible); // outputs: true
isDisplayed = elem.isDisplayed();
console.log(isDisplayed); // outputs: true
elem = $('#zeroOpacity');
isVisible = elem.isVisible();
console.log(isVisible); // outputs: true
isDisplayed = elem.isDisplayed();
console.log(isDisplayed); // outputs: true
});
* </example>
*
* @alias browser.isVisible
* @return {Boolean} true if element(s)* [is|are] visible
* @alias browser.isDisplayed
* @return {Boolean} true if element(s)* [is|are] displayed
* @uses protocol/elements, protocol/elementIdDisplayed

@@ -50,0 +51,0 @@ * @type state

@@ -54,3 +54,3 @@ 'use strict';

const formatted = /"/.test(text) ? 'concat("' + text.trim().split('"').join('", \'"\', "') + '")' : `"${text.trim()}"`;
const normalized = `[normalize-space(translate(., ' ', '')) = ${formatted}]`;
const normalized = `[normalize-space(text()) = ${formatted}]`;
const optionElement = yield this.findElementFromElement(this.elementId, 'xpath', `./option${normalized}|./optgroup/option${normalized}`);

@@ -57,0 +57,0 @@

@@ -54,2 +54,12 @@ 'use strict';

const prototype = (0, _utils.getPrototype)('browser');
/**
* apply mobile check flags to browser scope
*/
const mobileDetection = (0, _utils.mobileDetector)(params.capabilities);
Object.assign(prototype, Object.keys(mobileDetection).reduce((proto, flag) => {
proto[flag] = { value: mobileDetection[flag] };
return proto;
}, {}));
return _webdriver2.default.newSession(params, modifier, prototype, _wdioConfig.wrapCommand);

@@ -56,0 +66,0 @@ };

@@ -40,3 +40,3 @@ 'use strict';

*/
if (!this.elementId && !commandName.match(/(wait(Until|ForVisible|ForExist)|isExisting)/)) {
if (!this.elementId && !commandName.match(/(wait(Until|ForDisplayed|ForExist|ForEnabled)|isExisting)/)) {
log.debug(`command ${commandName} was called on an element ("${this.selector}") ` + `that wasn't found, waiting for it...`);

@@ -43,0 +43,0 @@

@@ -32,2 +32,6 @@ 'use strict';

var _graphemeSplitter = require('grapheme-splitter');
var _graphemeSplitter2 = _interopRequireDefault(_graphemeSplitter);
var _constants = require('./constants');

@@ -284,3 +288,3 @@

if (typeof val === 'string') {
ret.push(...val.split(''));
ret.push(...checkUnicode(val));
} else if (typeof val === 'number') {

@@ -390,3 +394,3 @@ const entry = `${val}`.split('');

function checkUnicode(value) {
return _constants.UNICODE_CHARACTERS.hasOwnProperty(value) ? [_constants.UNICODE_CHARACTERS[value]] : value.split('');
return _constants.UNICODE_CHARACTERS.hasOwnProperty(value) ? [_constants.UNICODE_CHARACTERS[value]] : new _graphemeSplitter2.default().splitGraphemes(value);
}
{
"name": "webdriverio",
"description": "Next-gen WebDriver test automation framework for Node.js",
"version": "5.0.0-alpha.14",
"version": "5.0.0-beta.0",
"homepage": "http://webdriver.io",

@@ -57,8 +57,9 @@ "author": "Christian Bromann <christian@saucelabs.com>",

"css-value": "^0.0.1",
"grapheme-splitter": "^1.0.2",
"lodash.zip": "^4.2.0",
"rgb2hex": "^0.1.0",
"wdio-config": "^5.0.0-alpha.14",
"wdio-logger": "^5.0.0-alpha.14",
"webdriver": "^5.0.0-alpha.14"
"wdio-config": "^5.0.0-beta.0",
"wdio-logger": "^5.0.0-beta.0",
"webdriver": "^5.0.0-beta.0"
}
}
SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc