all files / DEV/lib/protocol/ elementIdLocation.js

100% Statements 8/8
50% Branches 2/4
0% Functions 0/1
100% Lines 2/2
3 statements, 2 branches Ignored     
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33                                                               
/**
 *
 * Determine an element's location on the page. The point (0, 0) refers to the
 * upper-left corner of the page. The element's coordinates are returned as a
 * JSON object with x and y properties.
 *
 * @param {String} ID ID of a WebElement JSON object to route the command to
 * @returns {Object} The X and Y coordinates for the element on the page (`{x:number, y:number}`)
 *
 * @see  https://code.google.com/p/selenium/wiki/JsonWireProtocol#/session/:sessionId/element/:id/location
 * @type protocol
 *
 */
 
'use strict';
 
Object.defineProperty(exports, '__esModule', {
    value: true
});
 
var _utilsErrorHandler = require('../utils/ErrorHandler');
 
var elementIdLocation = function elementIdLocation(id) {
    if (typeof id !== 'string' && typeof id !== 'number') {
        throw new _utilsErrorHandler.ProtocolError('number or type of arguments don\'t agree with elementIdLocation protocol command');
    }
 
    return this.requestHandler.create('/session/:sessionId/element/' + id + '/location');
};
 
exports['default'] = elementIdLocation;
module.exports = exports['default'];
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9Vc2Vycy9jaHJpc3RpYW5icm9tYW5uL1NpdGVzL1dlYnByb2pla3RlL3dlYmRyaXZlcmpzL0RFVi9saWIvcHJvdG9jb2wvZWxlbWVudElkTG9jYXRpb24uanMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7aUNBYzhCLHVCQUF1Qjs7QUFFckQsSUFBSSxpQkFBaUIsR0FBRyxTQUFwQixpQkFBaUIsQ0FBYSxFQUFFLEVBQUU7QUFDbEMsUUFBSSxPQUFPLEVBQUUsS0FBSyxRQUFRLElBQUksT0FBTyxFQUFFLEtBQUssUUFBUSxFQUFFO0FBQ2xELGNBQU0scUNBQWtCLGtGQUFrRixDQUFDLENBQUE7S0FDOUc7O0FBRUQsV0FBTyxJQUFJLENBQUMsY0FBYyxDQUFDLE1BQU0sa0NBQWdDLEVBQUUsZUFBWSxDQUFBO0NBQ2xGLENBQUE7O3FCQUVjLGlCQUFpQiIsImZpbGUiOiIvVXNlcnMvY2hyaXN0aWFuYnJvbWFubi9TaXRlcy9XZWJwcm9qZWt0ZS93ZWJkcml2ZXJqcy9ERVYvbGliL3Byb3RvY29sL2VsZW1lbnRJZExvY2F0aW9uLmpzIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKlxuICogRGV0ZXJtaW5lIGFuIGVsZW1lbnQncyBsb2NhdGlvbiBvbiB0aGUgcGFnZS4gVGhlIHBvaW50ICgwLCAwKSByZWZlcnMgdG8gdGhlXG4gKiB1cHBlci1sZWZ0IGNvcm5lciBvZiB0aGUgcGFnZS4gVGhlIGVsZW1lbnQncyBjb29yZGluYXRlcyBhcmUgcmV0dXJuZWQgYXMgYVxuICogSlNPTiBvYmplY3Qgd2l0aCB4IGFuZCB5IHByb3BlcnRpZXMuXG4gKlxuICogQHBhcmFtIHtTdHJpbmd9IElEIElEIG9mIGEgV2ViRWxlbWVudCBKU09OIG9iamVjdCB0byByb3V0ZSB0aGUgY29tbWFuZCB0b1xuICogQHJldHVybnMge09iamVjdH0gVGhlIFggYW5kIFkgY29vcmRpbmF0ZXMgZm9yIHRoZSBlbGVtZW50IG9uIHRoZSBwYWdlIChge3g6bnVtYmVyLCB5Om51bWJlcn1gKVxuICpcbiAqIEBzZWUgIGh0dHBzOi8vY29kZS5nb29nbGUuY29tL3Avc2VsZW5pdW0vd2lraS9Kc29uV2lyZVByb3RvY29sIy9zZXNzaW9uLzpzZXNzaW9uSWQvZWxlbWVudC86aWQvbG9jYXRpb25cbiAqIEB0eXBlIHByb3RvY29sXG4gKlxuICovXG5cbmltcG9ydCB7IFByb3RvY29sRXJyb3IgfSBmcm9tICcuLi91dGlscy9FcnJvckhhbmRsZXInXG5cbmxldCBlbGVtZW50SWRMb2NhdGlvbiA9IGZ1bmN0aW9uIChpZCkge1xuICAgIGlmICh0eXBlb2YgaWQgIT09ICdzdHJpbmcnICYmIHR5cGVvZiBpZCAhPT0gJ251bWJlcicpIHtcbiAgICAgICAgdGhyb3cgbmV3IFByb3RvY29sRXJyb3IoJ251bWJlciBvciB0eXBlIG9mIGFyZ3VtZW50cyBkb25cXCd0IGFncmVlIHdpdGggZWxlbWVudElkTG9jYXRpb24gcHJvdG9jb2wgY29tbWFuZCcpXG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXMucmVxdWVzdEhhbmRsZXIuY3JlYXRlKGAvc2Vzc2lvbi86c2Vzc2lvbklkL2VsZW1lbnQvJHtpZH0vbG9jYXRpb25gKVxufVxuXG5leHBvcnQgZGVmYXVsdCBlbGVtZW50SWRMb2NhdGlvblxuIl19