UNPKG

@testim/testim-cli

Version:

Command line interface for running Testing on you CI

68 lines (56 loc) 5.07 kB
/** * * Protocol bindings for all localStorage operations. * * <example> :localStorage.js // get the storage item for the given key client.localStorage('GET', someKey, function(err,res) { ... }); // get all keys of the storage client.localStorage(function(err,res) { ... }); // set the storage item for the given key client.localStorage('POST', {key: someKey, value: someValue}); // remove the storage item for the given key client.localStorage('DELETE', 'someKey'); // clear the storage client.localStorage('DELETE'); * </example> * * @param {String} method method for storage operation * @param {Object|String=} args operation arguments * * @see https://code.google.com/p/selenium/wiki/JsonWireProtocol#/session/:sessionId/local_storage * @type protocol * */ 'use strict'; Object.defineProperty(exports, '__esModule', { value: true }); var localStorage = function localStorage(method, args) { if (method === undefined) method = 'GET'; /** * set default options */ var data = {}; var requestOptions = { path: '/session/:sessionId/local_storage', method: method.toUpperCase() }; if (requestOptions.method === 'POST' && typeof args === 'object') { data = { key: args.key, value: args.value }; } /** * add/delete specific key */ if (requestOptions.method === 'DELETE' && typeof args === 'string' || requestOptions.method === 'GET' && typeof args === 'string') { requestOptions.path += '/key/' + args; } return this.requestHandler.create(requestOptions, data); }; exports['default'] = localStorage; module.exports = exports['default']; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL2xpYi9wcm90b2NvbC9sb2NhbFN0b3JhZ2UuanMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUE4QkEsSUFBSSxZQUFZLEdBQUcsU0FBZixZQUFZLENBQWEsTUFBTSxFQUFVLElBQUksRUFBRTtRQUF0QixNQUFNLGdCQUFOLE1BQU0sR0FBRyxLQUFLOzs7OztBQUl2QyxRQUFJLElBQUksR0FBRyxFQUFFLENBQUE7QUFDYixRQUFJLGNBQWMsR0FBRztBQUNqQixZQUFJLEVBQUUsbUNBQW1DO0FBQ3pDLGNBQU0sRUFBRSxNQUFNLENBQUMsV0FBVyxFQUFFO0tBQy9CLENBQUE7O0FBRUQsUUFBSSxjQUFjLENBQUMsTUFBTSxLQUFLLE1BQU0sSUFBSSxPQUFPLElBQUksS0FBSyxRQUFRLEVBQUU7QUFDOUQsWUFBSSxHQUFHO0FBQ0gsZUFBRyxFQUFFLElBQUksQ0FBQyxHQUFHO0FBQ2IsaUJBQUssRUFBRSxJQUFJLENBQUMsS0FBSztTQUNwQixDQUFBO0tBQ0o7Ozs7O0FBS0QsUUFBSSxBQUFDLGNBQWMsQ0FBQyxNQUFNLEtBQUssUUFBUSxJQUFJLE9BQU8sSUFBSSxLQUFLLFFBQVEsSUFDL0QsY0FBYyxDQUFDLE1BQU0sS0FBSyxLQUFLLElBQUksT0FBTyxJQUFJLEtBQUssUUFBUSxBQUFDLEVBQUU7QUFDOUQsc0JBQWMsQ0FBQyxJQUFJLElBQUksT0FBTyxHQUFHLElBQUksQ0FBQTtLQUN4Qzs7QUFFRCxXQUFPLElBQUksQ0FBQyxjQUFjLENBQUMsTUFBTSxDQUFDLGNBQWMsRUFBRSxJQUFJLENBQUMsQ0FBQTtDQUMxRCxDQUFBOztxQkFFYyxZQUFZIiwiZmlsZSI6ImxvY2FsU3RvcmFnZS5qcyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICpcbiAqIFByb3RvY29sIGJpbmRpbmdzIGZvciBhbGwgbG9jYWxTdG9yYWdlIG9wZXJhdGlvbnMuXG4gKlxuICogPGV4YW1wbGU+XG4gICAgOmxvY2FsU3RvcmFnZS5qc1xuICAgIC8vIGdldCB0aGUgc3RvcmFnZSBpdGVtIGZvciB0aGUgZ2l2ZW4ga2V5XG4gICAgY2xpZW50LmxvY2FsU3RvcmFnZSgnR0VUJywgc29tZUtleSwgZnVuY3Rpb24oZXJyLHJlcykgeyAuLi4gfSk7XG5cbiAgICAvLyBnZXQgYWxsIGtleXMgb2YgdGhlIHN0b3JhZ2VcbiAgICBjbGllbnQubG9jYWxTdG9yYWdlKGZ1bmN0aW9uKGVycixyZXMpIHsgLi4uIH0pO1xuXG4gICAgLy8gc2V0IHRoZSBzdG9yYWdlIGl0ZW0gZm9yIHRoZSBnaXZlbiBrZXlcbiAgICBjbGllbnQubG9jYWxTdG9yYWdlKCdQT1NUJywge2tleTogc29tZUtleSwgdmFsdWU6IHNvbWVWYWx1ZX0pO1xuXG4gICAgLy8gcmVtb3ZlIHRoZSBzdG9yYWdlIGl0ZW0gZm9yIHRoZSBnaXZlbiBrZXlcbiAgICBjbGllbnQubG9jYWxTdG9yYWdlKCdERUxFVEUnLCAnc29tZUtleScpO1xuXG4gICAgLy8gY2xlYXIgdGhlIHN0b3JhZ2VcbiAgICBjbGllbnQubG9jYWxTdG9yYWdlKCdERUxFVEUnKTtcbiAqIDwvZXhhbXBsZT5cbiAqXG4gKiBAcGFyYW0ge1N0cmluZ30gICAgICAgICBtZXRob2QgIG1ldGhvZCBmb3Igc3RvcmFnZSBvcGVyYXRpb25cbiAqIEBwYXJhbSB7T2JqZWN0fFN0cmluZz19IGFyZ3MgICAgb3BlcmF0aW9uIGFyZ3VtZW50c1xuICpcbiAqIEBzZWUgIGh0dHBzOi8vY29kZS5nb29nbGUuY29tL3Avc2VsZW5pdW0vd2lraS9Kc29uV2lyZVByb3RvY29sIy9zZXNzaW9uLzpzZXNzaW9uSWQvbG9jYWxfc3RvcmFnZVxuICogQHR5cGUgcHJvdG9jb2xcbiAqXG4gKi9cblxubGV0IGxvY2FsU3RvcmFnZSA9IGZ1bmN0aW9uIChtZXRob2QgPSAnR0VUJywgYXJncykge1xuICAgIC8qKlxuICAgICAqIHNldCBkZWZhdWx0IG9wdGlvbnNcbiAgICAgKi9cbiAgICBsZXQgZGF0YSA9IHt9XG4gICAgbGV0IHJlcXVlc3RPcHRpb25zID0ge1xuICAgICAgICBwYXRoOiAnL3Nlc3Npb24vOnNlc3Npb25JZC9sb2NhbF9zdG9yYWdlJyxcbiAgICAgICAgbWV0aG9kOiBtZXRob2QudG9VcHBlckNhc2UoKVxuICAgIH1cblxuICAgIGlmIChyZXF1ZXN0T3B0aW9ucy5tZXRob2QgPT09ICdQT1NUJyAmJiB0eXBlb2YgYXJncyA9PT0gJ29iamVjdCcpIHtcbiAgICAgICAgZGF0YSA9IHtcbiAgICAgICAgICAgIGtleTogYXJncy5rZXksXG4gICAgICAgICAgICB2YWx1ZTogYXJncy52YWx1ZVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogYWRkL2RlbGV0ZSBzcGVjaWZpYyBrZXlcbiAgICAgKi9cbiAgICBpZiAoKHJlcXVlc3RPcHRpb25zLm1ldGhvZCA9PT0gJ0RFTEVURScgJiYgdHlwZW9mIGFyZ3MgPT09ICdzdHJpbmcnKSB8fFxuICAgICAgIChyZXF1ZXN0T3B0aW9ucy5tZXRob2QgPT09ICdHRVQnICYmIHR5cGVvZiBhcmdzID09PSAnc3RyaW5nJykpIHtcbiAgICAgICAgcmVxdWVzdE9wdGlvbnMucGF0aCArPSAnL2tleS8nICsgYXJnc1xuICAgIH1cblxuICAgIHJldHVybiB0aGlzLnJlcXVlc3RIYW5kbGVyLmNyZWF0ZShyZXF1ZXN0T3B0aW9ucywgZGF0YSlcbn1cblxuZXhwb3J0IGRlZmF1bHQgbG9jYWxTdG9yYWdlXG4iXX0=