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

80% Statements 8/10
100% Branches 2/2
0% Functions 0/1
50% Lines 2/4
4 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 34 35 36 37 38 39 40 41 42 43 44 45 46 47                                                                                           
/**
 *
 * Protocol binding to handle with tabs in the browser.
 *
 * <example>
    :window.js
    // change focus to another window
    // using window handle
    client.window('{dc30381e-e2f3-9444-8bf3-12cc44e8372a}');
 
    // using tab name attribute
    client.window('my tab');
 
    // close the current window
    client.window();
 * </example>
 *
 * @param {String=} windowHandle the window to change focus to
 *
 * @see  https://code.google.com/p/selenium/wiki/JsonWireProtocol#/session/:sessionId/window
 * @type protocol
 *
 */
 
'use strict';
 
Object.defineProperty(exports, '__esModule', {
    value: true
});
var window = function window(windowHandle) {
    var data = {};
    var requestOptions = {
        path: '/session/:sessionId/window',
        method: 'DELETE'
    };
 
    if (typeof windowHandle === 'string') {
        data = { name: windowHandle };
        requestOptions.method = 'POST';
    }
 
    return this.requestHandler.create(requestOptions, data);
};
 
exports['default'] = window;
module.exports = exports['default'];
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9Vc2Vycy9jaHJpc3RpYW5icm9tYW5uL1NpdGVzL1dlYnByb2pla3RlL3dlYmRyaXZlcmpzL0RFVi9saWIvcHJvdG9jb2wvd2luZG93LmpzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBd0JBLElBQUksTUFBTSxHQUFHLFNBQVQsTUFBTSxDQUFhLFlBQVksRUFBRTtBQUNqQyxRQUFJLElBQUksR0FBRyxFQUFFLENBQUE7QUFDYixRQUFJLGNBQWMsR0FBRztBQUNqQixZQUFJLEVBQUUsNEJBQTRCO0FBQ2xDLGNBQU0sRUFBRSxRQUFRO0tBQ25CLENBQUE7O0FBRUQsUUFBSSxPQUFPLFlBQVksS0FBSyxRQUFRLEVBQUU7QUFDbEMsWUFBSSxHQUFHLEVBQUUsSUFBSSxFQUFFLFlBQVksRUFBRSxDQUFBO0FBQzdCLHNCQUFjLENBQUMsTUFBTSxHQUFHLE1BQU0sQ0FBQTtLQUNqQzs7QUFFRCxXQUFPLElBQUksQ0FBQyxjQUFjLENBQUMsTUFBTSxDQUFDLGNBQWMsRUFBRSxJQUFJLENBQUMsQ0FBQTtDQUMxRCxDQUFBOztxQkFFYyxNQUFNIiwiZmlsZSI6Ii9Vc2Vycy9jaHJpc3RpYW5icm9tYW5uL1NpdGVzL1dlYnByb2pla3RlL3dlYmRyaXZlcmpzL0RFVi9saWIvcHJvdG9jb2wvd2luZG93LmpzIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKlxuICogUHJvdG9jb2wgYmluZGluZyB0byBoYW5kbGUgd2l0aCB0YWJzIGluIHRoZSBicm93c2VyLlxuICpcbiAqIDxleGFtcGxlPlxuICAgIDp3aW5kb3cuanNcbiAgICAvLyBjaGFuZ2UgZm9jdXMgdG8gYW5vdGhlciB3aW5kb3dcbiAgICAvLyB1c2luZyB3aW5kb3cgaGFuZGxlXG4gICAgY2xpZW50LndpbmRvdygne2RjMzAzODFlLWUyZjMtOTQ0NC04YmYzLTEyY2M0NGU4MzcyYX0nKTtcblxuICAgIC8vIHVzaW5nIHRhYiBuYW1lIGF0dHJpYnV0ZVxuICAgIGNsaWVudC53aW5kb3coJ215IHRhYicpO1xuXG4gICAgLy8gY2xvc2UgdGhlIGN1cnJlbnQgd2luZG93XG4gICAgY2xpZW50LndpbmRvdygpO1xuICogPC9leGFtcGxlPlxuICpcbiAqIEBwYXJhbSB7U3RyaW5nPX0gd2luZG93SGFuZGxlIHRoZSB3aW5kb3cgdG8gY2hhbmdlIGZvY3VzIHRvXG4gKlxuICogQHNlZSAgaHR0cHM6Ly9jb2RlLmdvb2dsZS5jb20vcC9zZWxlbml1bS93aWtpL0pzb25XaXJlUHJvdG9jb2wjL3Nlc3Npb24vOnNlc3Npb25JZC93aW5kb3dcbiAqIEB0eXBlIHByb3RvY29sXG4gKlxuICovXG5cbmxldCB3aW5kb3cgPSBmdW5jdGlvbiAod2luZG93SGFuZGxlKSB7XG4gICAgbGV0IGRhdGEgPSB7fVxuICAgIGxldCByZXF1ZXN0T3B0aW9ucyA9IHtcbiAgICAgICAgcGF0aDogJy9zZXNzaW9uLzpzZXNzaW9uSWQvd2luZG93JyxcbiAgICAgICAgbWV0aG9kOiAnREVMRVRFJ1xuICAgIH1cblxuICAgIGlmICh0eXBlb2Ygd2luZG93SGFuZGxlID09PSAnc3RyaW5nJykge1xuICAgICAgICBkYXRhID0geyBuYW1lOiB3aW5kb3dIYW5kbGUgfVxuICAgICAgICByZXF1ZXN0T3B0aW9ucy5tZXRob2QgPSAnUE9TVCdcbiAgICB9XG5cbiAgICByZXR1cm4gdGhpcy5yZXF1ZXN0SGFuZGxlci5jcmVhdGUocmVxdWVzdE9wdGlvbnMsIGRhdGEpXG59XG5cbmV4cG9ydCBkZWZhdWx0IHdpbmRvd1xuIl19