appium-helios-driver
Version:
Appium bridge to AppiumForHelios
126 lines (101 loc) • 10.7 kB
JavaScript
require('source-map-support').install();
;
var _regeneratorRuntime = require('babel-runtime/regenerator')['default'];
var _interopRequireDefault = require('babel-runtime/helpers/interop-require-default')['default'];
var _ = require('../..');
var _2 = _interopRequireDefault(_);
var _chai = require('chai');
var _chai2 = _interopRequireDefault(_chai);
var _chaiAsPromised = require('chai-as-promised');
var _chaiAsPromised2 = _interopRequireDefault(_chaiAsPromised);
var _sinon = require('sinon');
var _sinon2 = _interopRequireDefault(_sinon);
var _bluebird = require('bluebird');
var _bluebird2 = _interopRequireDefault(_bluebird);
_chai2['default'].should();
_chai2['default'].use(_chaiAsPromised2['default']);
describe('driver.js', function () {
describe('constructor', function () {
it('calls BaseDriver constructor with opts', function () {
var driver = new _2['default']({ foo: 'bar' });
driver.should.exist;
driver.opts.foo.should.equal('bar');
});
});
describe('createSession', function () {
it('should set sessionId', function callee$2$0() {
var driver;
return _regeneratorRuntime.async(function callee$2$0$(context$3$0) {
while (1) switch (context$3$0.prev = context$3$0.next) {
case 0:
driver = new _2['default']({ app: 'myapp' }, false);
_sinon2['default'].mock(driver).expects('startAppiumForHeliosSession').once().returns(_bluebird2['default'].resolve());
context$3$0.next = 4;
return _regeneratorRuntime.awrap(driver.createSession({ cap: 'foo' }));
case 4:
driver.sessionId.should.exist;
driver.caps.cap.should.equal('foo');
case 6:
case 'end':
return context$3$0.stop();
}
}, null, this);
});
it('should set sessionId (W3C)', function callee$2$0() {
var driver;
return _regeneratorRuntime.async(function callee$2$0$(context$3$0) {
while (1) switch (context$3$0.prev = context$3$0.next) {
case 0:
driver = new _2['default']({ app: 'myapp' }, false);
driver.shouldValidateCaps = false;
_sinon2['default'].mock(driver).expects('startAppiumForHeliosSession').once().returns(_bluebird2['default'].resolve());
context$3$0.next = 5;
return _regeneratorRuntime.awrap(driver.createSession(null, null, {
alwaysMatch: { cap: 'foo' },
firstMatch: [{}]
}));
case 5:
driver.sessionId.should.exist;
driver.caps.cap.should.equal('foo');
case 7:
case 'end':
return context$3$0.stop();
}
}, null, this);
});
});
describe('proxying', function () {
var driver = undefined;
before(function () {
driver = new _2['default']({}, false);
driver.sessionId = 'abc';
});
describe('#proxyActive', function () {
it('should exist', function () {
driver.proxyActive.should.be.an['instanceof'](Function);
});
it('should return true', function () {
driver.proxyActive('abc').should.be['true'];
});
it('should throw an error if session id is wrong', function () {
(function () {
driver.proxyActive('aaa');
}).should['throw'];
});
});
describe('#canProxy', function () {
it('should exist', function () {
driver.canProxy.should.be.an['instanceof'](Function);
});
it('should return true', function () {
driver.canProxy('abc').should.be['true'];
});
it('should throw an error if session id is wrong', function () {
(function () {
driver.canProxy('aaa');
}).should['throw'];
});
});
});
});
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInRlc3QvdW5pdC9kcml2ZXItc3BlY3MuanMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Z0JBRXlCLE9BQU87Ozs7b0JBQ2YsTUFBTTs7Ozs4QkFDSSxrQkFBa0I7Ozs7cUJBQzNCLE9BQU87Ozs7d0JBQ1gsVUFBVTs7OztBQUd4QixrQkFBSyxNQUFNLEVBQUUsQ0FBQztBQUNkLGtCQUFLLEdBQUcsNkJBQWdCLENBQUM7O0FBRXpCLFFBQVEsQ0FBQyxXQUFXLEVBQUUsWUFBWTtBQUNoQyxVQUFRLENBQUMsYUFBYSxFQUFFLFlBQVk7QUFDbEMsTUFBRSxDQUFDLHdDQUF3QyxFQUFFLFlBQVk7QUFDdkQsVUFBSSxNQUFNLEdBQUcsa0JBQWlCLEVBQUMsR0FBRyxFQUFFLEtBQUssRUFBQyxDQUFDLENBQUM7QUFDNUMsWUFBTSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUM7QUFDcEIsWUFBTSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQztLQUNyQyxDQUFDLENBQUM7R0FDSixDQUFDLENBQUM7O0FBRUgsVUFBUSxDQUFDLGVBQWUsRUFBRSxZQUFZO0FBQ3BDLE1BQUUsQ0FBQyxzQkFBc0IsRUFBRTtVQUNyQixNQUFNOzs7O0FBQU4sa0JBQU0sR0FBRyxrQkFBaUIsRUFBQyxHQUFHLEVBQUUsT0FBTyxFQUFDLEVBQUUsS0FBSyxDQUFDOztBQUNwRCwrQkFBTSxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsT0FBTyxDQUFDLDZCQUE2QixDQUFDLENBQ3BELElBQUksRUFBRSxDQUNOLE9BQU8sQ0FBQyxzQkFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDOzs2Q0FDcEIsTUFBTSxDQUFDLGFBQWEsQ0FBQyxFQUFDLEdBQUcsRUFBRSxLQUFLLEVBQUMsQ0FBQzs7O0FBQ3hDLGtCQUFNLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUM7QUFDOUIsa0JBQU0sQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUM7Ozs7Ozs7S0FDckMsQ0FBQyxDQUFDO0FBQ0gsTUFBRSxDQUFDLDRCQUE0QixFQUFFO1VBQzNCLE1BQU07Ozs7QUFBTixrQkFBTSxHQUFHLGtCQUFpQixFQUFDLEdBQUcsRUFBRSxPQUFPLEVBQUMsRUFBRSxLQUFLLENBQUM7O0FBQ3BELGtCQUFNLENBQUMsa0JBQWtCLEdBQUcsS0FBSyxDQUFDO0FBQ2xDLCtCQUFNLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxPQUFPLENBQUMsNkJBQTZCLENBQUMsQ0FDcEQsSUFBSSxFQUFFLENBQ04sT0FBTyxDQUFDLHNCQUFFLE9BQU8sRUFBRSxDQUFDLENBQUM7OzZDQUNwQixNQUFNLENBQUMsYUFBYSxDQUFDLElBQUksRUFBRSxJQUFJLEVBQUU7QUFDckMseUJBQVcsRUFBRSxFQUFDLEdBQUcsRUFBRSxLQUFLLEVBQUM7QUFDekIsd0JBQVUsRUFBRSxDQUFDLEVBQUUsQ0FBQzthQUNqQixDQUFDOzs7QUFDRixrQkFBTSxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDO0FBQzlCLGtCQUFNLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDOzs7Ozs7O0tBQ3JDLENBQUMsQ0FBQztHQUNKLENBQUMsQ0FBQzs7QUFFSCxVQUFRLENBQUMsVUFBVSxFQUFFLFlBQVk7QUFDL0IsUUFBSSxNQUFNLFlBQUEsQ0FBQztBQUNYLFVBQU0sQ0FBQyxZQUFZO0FBQ2pCLFlBQU0sR0FBRyxrQkFBaUIsRUFBRSxFQUFFLEtBQUssQ0FBQyxDQUFDO0FBQ3JDLFlBQU0sQ0FBQyxTQUFTLEdBQUcsS0FBSyxDQUFDO0tBQzFCLENBQUMsQ0FBQztBQUNILFlBQVEsQ0FBQyxjQUFjLEVBQUUsWUFBWTtBQUNuQyxRQUFFLENBQUMsY0FBYyxFQUFFLFlBQVk7QUFDN0IsY0FBTSxDQUFDLFdBQVcsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLEVBQUUsY0FBVyxDQUFDLFFBQVEsQ0FBQyxDQUFDO09BQ3RELENBQUMsQ0FBQztBQUNILFFBQUUsQ0FBQyxvQkFBb0IsRUFBRSxZQUFZO0FBQ25DLGNBQU0sQ0FBQyxXQUFXLENBQUMsS0FBSyxDQUFDLENBQUMsTUFBTSxDQUFDLEVBQUUsUUFBSyxDQUFDO09BQzFDLENBQUMsQ0FBQztBQUNILFFBQUUsQ0FBQyw4Q0FBOEMsRUFBRSxZQUFZO0FBQzdELFNBQUMsWUFBTTtBQUFDLGdCQUFNLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FBQyxDQUFDO1NBQUMsQ0FBQSxDQUFFLE1BQU0sU0FBTSxDQUFDO09BQ25ELENBQUMsQ0FBQztLQUNKLENBQUMsQ0FBQzs7QUFFSCxZQUFRLENBQUMsV0FBVyxFQUFFLFlBQVk7QUFDaEMsUUFBRSxDQUFDLGNBQWMsRUFBRSxZQUFZO0FBQzdCLGNBQU0sQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxFQUFFLGNBQVcsQ0FBQyxRQUFRLENBQUMsQ0FBQztPQUNuRCxDQUFDLENBQUM7QUFDSCxRQUFFLENBQUMsb0JBQW9CLEVBQUUsWUFBWTtBQUNuQyxjQUFNLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDLE1BQU0sQ0FBQyxFQUFFLFFBQUssQ0FBQztPQUN2QyxDQUFDLENBQUM7QUFDSCxRQUFFLENBQUMsOENBQThDLEVBQUUsWUFBWTtBQUM3RCxTQUFDLFlBQU07QUFBQyxnQkFBTSxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsQ0FBQztTQUFFLENBQUEsQ0FBRSxNQUFNLFNBQU0sQ0FBQztPQUNqRCxDQUFDLENBQUM7S0FDSixDQUFDLENBQUM7R0FDSixDQUFDLENBQUM7Q0FDSixDQUFDLENBQUMiLCJmaWxlIjoidGVzdC91bml0L2RyaXZlci1zcGVjcy5qcyIsInNvdXJjZXNDb250ZW50IjpbIi8vIHRyYW5zcGlsZTptb2NoYVxuXG5pbXBvcnQgSGVsaW9zRHJpdmVyIGZyb20gJy4uLy4uJztcbmltcG9ydCBjaGFpIGZyb20gJ2NoYWknO1xuaW1wb3J0IGNoYWlBc1Byb21pc2VkIGZyb20gJ2NoYWktYXMtcHJvbWlzZWQnO1xuaW1wb3J0IHNpbm9uIGZyb20gJ3Npbm9uJztcbmltcG9ydCBCIGZyb20gJ2JsdWViaXJkJztcblxuXG5jaGFpLnNob3VsZCgpO1xuY2hhaS51c2UoY2hhaUFzUHJvbWlzZWQpO1xuXG5kZXNjcmliZSgnZHJpdmVyLmpzJywgZnVuY3Rpb24gKCkge1xuICBkZXNjcmliZSgnY29uc3RydWN0b3InLCBmdW5jdGlvbiAoKSB7XG4gICAgaXQoJ2NhbGxzIEJhc2VEcml2ZXIgY29uc3RydWN0b3Igd2l0aCBvcHRzJywgZnVuY3Rpb24gKCkge1xuICAgICAgbGV0IGRyaXZlciA9IG5ldyBIZWxpb3NEcml2ZXIoe2ZvbzogJ2Jhcid9KTtcbiAgICAgIGRyaXZlci5zaG91bGQuZXhpc3Q7XG4gICAgICBkcml2ZXIub3B0cy5mb28uc2hvdWxkLmVxdWFsKCdiYXInKTtcbiAgICB9KTtcbiAgfSk7XG5cbiAgZGVzY3JpYmUoJ2NyZWF0ZVNlc3Npb24nLCBmdW5jdGlvbiAoKSB7XG4gICAgaXQoJ3Nob3VsZCBzZXQgc2Vzc2lvbklkJywgYXN5bmMgZnVuY3Rpb24gKCkge1xuICAgICAgbGV0IGRyaXZlciA9IG5ldyBIZWxpb3NEcml2ZXIoe2FwcDogJ215YXBwJ30sIGZhbHNlKTtcbiAgICAgIHNpbm9uLm1vY2soZHJpdmVyKS5leHBlY3RzKCdzdGFydEFwcGl1bUZvckhlbGlvc1Nlc3Npb24nKVxuICAgICAgICAgIC5vbmNlKClcbiAgICAgICAgICAucmV0dXJucyhCLnJlc29sdmUoKSk7XG4gICAgICBhd2FpdCBkcml2ZXIuY3JlYXRlU2Vzc2lvbih7Y2FwOiAnZm9vJ30pO1xuICAgICAgZHJpdmVyLnNlc3Npb25JZC5zaG91bGQuZXhpc3Q7XG4gICAgICBkcml2ZXIuY2Fwcy5jYXAuc2hvdWxkLmVxdWFsKCdmb28nKTtcbiAgICB9KTtcbiAgICBpdCgnc2hvdWxkIHNldCBzZXNzaW9uSWQgKFczQyknLCBhc3luYyBmdW5jdGlvbiAoKSB7XG4gICAgICBsZXQgZHJpdmVyID0gbmV3IEhlbGlvc0RyaXZlcih7YXBwOiAnbXlhcHAnfSwgZmFsc2UpO1xuICAgICAgZHJpdmVyLnNob3VsZFZhbGlkYXRlQ2FwcyA9IGZhbHNlO1xuICAgICAgc2lub24ubW9jayhkcml2ZXIpLmV4cGVjdHMoJ3N0YXJ0QXBwaXVtRm9ySGVsaW9zU2Vzc2lvbicpXG4gICAgICAgICAgLm9uY2UoKVxuICAgICAgICAgIC5yZXR1cm5zKEIucmVzb2x2ZSgpKTtcbiAgICAgIGF3YWl0IGRyaXZlci5jcmVhdGVTZXNzaW9uKG51bGwsIG51bGwsIHtcbiAgICAgICAgYWx3YXlzTWF0Y2g6IHtjYXA6ICdmb28nfSxcbiAgICAgICAgZmlyc3RNYXRjaDogW3t9XSxcbiAgICAgIH0pO1xuICAgICAgZHJpdmVyLnNlc3Npb25JZC5zaG91bGQuZXhpc3Q7XG4gICAgICBkcml2ZXIuY2Fwcy5jYXAuc2hvdWxkLmVxdWFsKCdmb28nKTtcbiAgICB9KTtcbiAgfSk7XG5cbiAgZGVzY3JpYmUoJ3Byb3h5aW5nJywgZnVuY3Rpb24gKCkge1xuICAgIGxldCBkcml2ZXI7XG4gICAgYmVmb3JlKGZ1bmN0aW9uICgpIHtcbiAgICAgIGRyaXZlciA9IG5ldyBIZWxpb3NEcml2ZXIoe30sIGZhbHNlKTtcbiAgICAgIGRyaXZlci5zZXNzaW9uSWQgPSAnYWJjJztcbiAgICB9KTtcbiAgICBkZXNjcmliZSgnI3Byb3h5QWN0aXZlJywgZnVuY3Rpb24gKCkge1xuICAgICAgaXQoJ3Nob3VsZCBleGlzdCcsIGZ1bmN0aW9uICgpIHtcbiAgICAgICAgZHJpdmVyLnByb3h5QWN0aXZlLnNob3VsZC5iZS5hbi5pbnN0YW5jZW9mKEZ1bmN0aW9uKTtcbiAgICAgIH0pO1xuICAgICAgaXQoJ3Nob3VsZCByZXR1cm4gdHJ1ZScsIGZ1bmN0aW9uICgpIHtcbiAgICAgICAgZHJpdmVyLnByb3h5QWN0aXZlKCdhYmMnKS5zaG91bGQuYmUudHJ1ZTtcbiAgICAgIH0pO1xuICAgICAgaXQoJ3Nob3VsZCB0aHJvdyBhbiBlcnJvciBpZiBzZXNzaW9uIGlkIGlzIHdyb25nJywgZnVuY3Rpb24gKCkge1xuICAgICAgICAoKCkgPT4ge2RyaXZlci5wcm94eUFjdGl2ZSgnYWFhJyk7fSkuc2hvdWxkLnRocm93O1xuICAgICAgfSk7XG4gICAgfSk7XG5cbiAgICBkZXNjcmliZSgnI2NhblByb3h5JywgZnVuY3Rpb24gKCkge1xuICAgICAgaXQoJ3Nob3VsZCBleGlzdCcsIGZ1bmN0aW9uICgpIHtcbiAgICAgICAgZHJpdmVyLmNhblByb3h5LnNob3VsZC5iZS5hbi5pbnN0YW5jZW9mKEZ1bmN0aW9uKTtcbiAgICAgIH0pO1xuICAgICAgaXQoJ3Nob3VsZCByZXR1cm4gdHJ1ZScsIGZ1bmN0aW9uICgpIHtcbiAgICAgICAgZHJpdmVyLmNhblByb3h5KCdhYmMnKS5zaG91bGQuYmUudHJ1ZTtcbiAgICAgIH0pO1xuICAgICAgaXQoJ3Nob3VsZCB0aHJvdyBhbiBlcnJvciBpZiBzZXNzaW9uIGlkIGlzIHdyb25nJywgZnVuY3Rpb24gKCkge1xuICAgICAgICAoKCkgPT4ge2RyaXZlci5jYW5Qcm94eSgnYWFhJyk7IH0pLnNob3VsZC50aHJvdztcbiAgICAgIH0pO1xuICAgIH0pO1xuICB9KTtcbn0pO1xuIl0sInNvdXJjZVJvb3QiOiIuLi8uLi8uLiJ9