UNPKG

appium-webdriveragent-driver

Version:
130 lines (95 loc) 7.66 kB
'use strict'; var _regeneratorRuntime = require('babel-runtime/regenerator')['default']; var _interopRequireDefault = require('babel-runtime/helpers/interop-require-default')['default']; var _this = this; var _ = require('../..'); var _path = require('path'); var _path2 = _interopRequireDefault(_path); var _iosWebviewApp = require('ios-webview-app'); var _iosWebviewApp2 = _interopRequireDefault(_iosWebviewApp); var _chai = require('chai'); var _chai2 = _interopRequireDefault(_chai); var _chaiAsPromised = require('chai-as-promised'); var _chaiAsPromised2 = _interopRequireDefault(_chaiAsPromised); var _wd = require('wd'); var _wd2 = _interopRequireDefault(_wd); _chai2['default'].should(); _chai2['default'].use(_chaiAsPromised2['default']); var HOST = "localhost", PORT = 4994, PLATFORM_VERSION = '9.1'; var DEFAULT_CAPS = { platformName: 'iOS', platformVersion: PLATFORM_VERSION, app: _path2['default'].resolve(require.resolve('ios-webview-app'), '..', _iosWebviewApp2['default'][1]), deviceName: "iPhone 6", automationName: "WebDriverAgent" }; describe('Webview', function () { var server = undefined; var driver = _wd2['default'].promiseChainRemote(HOST, PORT); before(function callee$1$0() { return _regeneratorRuntime.async(function callee$1$0$(context$2$0) { while (1) switch (context$2$0.prev = context$2$0.next) { case 0: context$2$0.next = 2; return _regeneratorRuntime.awrap((0, _.startServer)(PORT, HOST)); case 2: server = context$2$0.sent; case 3: case 'end': return context$2$0.stop(); } }, null, _this); }); after(function () { // TODO I don't think this is actually shutting the server down, figure // that out server.close(); }); it('should start a session, navigate to url, get title', function callee$1$0() { var contexts, urlBar, button, title; return _regeneratorRuntime.async(function callee$1$0$(context$2$0) { while (1) switch (context$2$0.prev = context$2$0.next) { case 0: this.timeout(120 * 1000); context$2$0.next = 3; return _regeneratorRuntime.awrap(driver.init(DEFAULT_CAPS)); case 3: context$2$0.next = 5; return _regeneratorRuntime.awrap(driver.contexts()); case 5: contexts = context$2$0.sent; contexts.length.should.equal(2); context$2$0.next = 9; return _regeneratorRuntime.awrap(driver.elementByClassName('UIATextField')); case 9: urlBar = context$2$0.sent; context$2$0.next = 12; return _regeneratorRuntime.awrap(driver.elementByClassName('UIAButton')); case 12: button = context$2$0.sent; context$2$0.next = 15; return _regeneratorRuntime.awrap(urlBar.sendKeys('appium.io')); case 15: context$2$0.next = 17; return _regeneratorRuntime.awrap(button.click()); case 17: context$2$0.next = 19; return _regeneratorRuntime.awrap(driver.context('WEBVIEW_1')); case 19: context$2$0.next = 21; return _regeneratorRuntime.awrap(driver.title()); case 21: title = context$2$0.sent; title.should.equal('Appium: Mobile App Automation Made Awesome.'); context$2$0.next = 25; return _regeneratorRuntime.awrap(driver.quit()); case 25: case 'end': return context$2$0.stop(); } }, null, this); }); }); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInRlc3QvZnVuY3Rpb25hbC93ZWJ2aWV3LWUyZS1zcGVjcy5qcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7OztnQkFBNEIsT0FBTzs7b0JBQ2xCLE1BQU07Ozs7NkJBQ04saUJBQWlCOzs7O29CQUNqQixNQUFNOzs7OzhCQUNJLGtCQUFrQjs7OztrQkFDOUIsSUFBSTs7OztBQUVuQixrQkFBSyxNQUFNLEVBQUUsQ0FBQztBQUNkLGtCQUFLLEdBQUcsNkJBQWdCLENBQUM7O0FBRXpCLElBQU0sSUFBSSxHQUFHLFdBQVc7SUFDbEIsSUFBSSxHQUFHLElBQUk7SUFDWCxnQkFBZ0IsR0FBRyxLQUFLLENBQUM7O0FBRS9CLElBQU0sWUFBWSxHQUFHO0FBQ25CLGNBQVksRUFBRSxLQUFLO0FBQ25CLGlCQUFlLEVBQUUsZ0JBQWdCO0FBQ2pDLEtBQUcsRUFBRSxrQkFBSyxPQUFPLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLElBQUksRUFBRSwyQkFBSyxDQUFDLENBQUMsQ0FBQztBQUNwRSxZQUFVLEVBQUUsVUFBVTtBQUN0QixnQkFBYyxFQUFFLGdCQUFnQjtDQUNqQyxDQUFDOztBQUlGLFFBQVEsQ0FBQyxTQUFTLEVBQUUsWUFBTTtBQUN4QixNQUFJLE1BQU0sWUFBQSxDQUFDO0FBQ1gsTUFBSSxNQUFNLEdBQUcsZ0JBQUcsa0JBQWtCLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxDQUFDO0FBQy9DLFFBQU0sQ0FBQzs7Ozs7MkNBQ1UsbUJBQVksSUFBSSxFQUFFLElBQUksQ0FBQzs7O0FBQXRDLGdCQUFNOzs7Ozs7O0dBQ1AsQ0FBQyxDQUFDOztBQUVILE9BQUssQ0FBQyxZQUFNOzs7QUFHVixVQUFNLENBQUMsS0FBSyxFQUFFLENBQUM7R0FDaEIsQ0FBQyxDQUFDOztBQUVILElBQUUsQ0FBQyxvREFBb0QsRUFBRTtRQUduRCxRQUFRLEVBR1IsTUFBTSxFQUNOLE1BQU0sRUFLTixLQUFLOzs7O0FBWFQsY0FBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLEdBQUcsSUFBSSxDQUFDLENBQUM7OzJDQUNuQixNQUFNLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQzs7OzsyQ0FDVixNQUFNLENBQUMsUUFBUSxFQUFFOzs7QUFBbEMsa0JBQVE7O0FBQ1osa0JBQVEsQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQzs7OzJDQUViLE1BQU0sQ0FBQyxrQkFBa0IsQ0FBQyxjQUFjLENBQUM7OztBQUF4RCxnQkFBTTs7MkNBQ1MsTUFBTSxDQUFDLGtCQUFrQixDQUFDLFdBQVcsQ0FBQzs7O0FBQXJELGdCQUFNOzsyQ0FDSixNQUFNLENBQUMsUUFBUSxDQUFDLFdBQVcsQ0FBQzs7OzsyQ0FDNUIsTUFBTSxDQUFDLEtBQUssRUFBRTs7OzsyQ0FFZCxNQUFNLENBQUMsT0FBTyxDQUFDLFdBQVcsQ0FBQzs7OzsyQ0FDZixNQUFNLENBQUMsS0FBSyxFQUFFOzs7QUFBNUIsZUFBSzs7QUFDVCxlQUFLLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyw2Q0FBNkMsQ0FBQyxDQUFDOzs7MkNBRTVELE1BQU0sQ0FBQyxJQUFJLEVBQUU7Ozs7Ozs7R0FDcEIsQ0FBQyxDQUFDO0NBRUosQ0FBQyxDQUFDIiwiZmlsZSI6InRlc3QvZnVuY3Rpb25hbC93ZWJ2aWV3LWUyZS1zcGVjcy5qcyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IHN0YXJ0U2VydmVyIH0gZnJvbSAnLi4vLi4nO1xuaW1wb3J0IHBhdGggZnJvbSAncGF0aCc7XG5pbXBvcnQgYXBwcyBmcm9tICdpb3Mtd2Vidmlldy1hcHAnO1xuaW1wb3J0IGNoYWkgZnJvbSAnY2hhaSc7XG5pbXBvcnQgY2hhaUFzUHJvbWlzZWQgZnJvbSAnY2hhaS1hcy1wcm9taXNlZCc7XG5pbXBvcnQgd2QgZnJvbSAnd2QnO1xuXG5jaGFpLnNob3VsZCgpO1xuY2hhaS51c2UoY2hhaUFzUHJvbWlzZWQpO1xuXG5jb25zdCBIT1NUID0gXCJsb2NhbGhvc3RcIixcbiAgICAgIFBPUlQgPSA0OTk0LFxuICAgICAgUExBVEZPUk1fVkVSU0lPTiA9ICc5LjEnO1xuXG5jb25zdCBERUZBVUxUX0NBUFMgPSB7XG4gIHBsYXRmb3JtTmFtZTogJ2lPUycsXG4gIHBsYXRmb3JtVmVyc2lvbjogUExBVEZPUk1fVkVSU0lPTixcbiAgYXBwOiBwYXRoLnJlc29sdmUocmVxdWlyZS5yZXNvbHZlKCdpb3Mtd2Vidmlldy1hcHAnKSwgJy4uJywgYXBwc1sxXSksXG4gIGRldmljZU5hbWU6IFwiaVBob25lIDZcIixcbiAgYXV0b21hdGlvbk5hbWU6IFwiV2ViRHJpdmVyQWdlbnRcIixcbn07XG5cblxuXG5kZXNjcmliZSgnV2VidmlldycsICgpID0+IHtcbiAgbGV0IHNlcnZlcjtcbiAgbGV0IGRyaXZlciA9IHdkLnByb21pc2VDaGFpblJlbW90ZShIT1NULCBQT1JUKTtcbiAgYmVmb3JlKGFzeW5jICgpID0+IHtcbiAgICBzZXJ2ZXIgPSBhd2FpdCBzdGFydFNlcnZlcihQT1JULCBIT1NUKTtcbiAgfSk7XG5cbiAgYWZ0ZXIoKCkgPT4ge1xuICAgIC8vIFRPRE8gSSBkb24ndCB0aGluayB0aGlzIGlzIGFjdHVhbGx5IHNodXR0aW5nIHRoZSBzZXJ2ZXIgZG93biwgZmlndXJlXG4gICAgLy8gdGhhdCBvdXRcbiAgICBzZXJ2ZXIuY2xvc2UoKTtcbiAgfSk7XG5cbiAgaXQoJ3Nob3VsZCBzdGFydCBhIHNlc3Npb24sIG5hdmlnYXRlIHRvIHVybCwgZ2V0IHRpdGxlJywgYXN5bmMgZnVuY3Rpb24gKCkge1xuICAgIHRoaXMudGltZW91dCgxMjAgKiAxMDAwKTtcbiAgICBhd2FpdCBkcml2ZXIuaW5pdChERUZBVUxUX0NBUFMpO1xuICAgIGxldCBjb250ZXh0cyA9IGF3YWl0IGRyaXZlci5jb250ZXh0cygpO1xuICAgIGNvbnRleHRzLmxlbmd0aC5zaG91bGQuZXF1YWwoMik7XG5cbiAgICBsZXQgdXJsQmFyID0gYXdhaXQgZHJpdmVyLmVsZW1lbnRCeUNsYXNzTmFtZSgnVUlBVGV4dEZpZWxkJyk7XG4gICAgbGV0IGJ1dHRvbiA9IGF3YWl0IGRyaXZlci5lbGVtZW50QnlDbGFzc05hbWUoJ1VJQUJ1dHRvbicpO1xuICAgIGF3YWl0IHVybEJhci5zZW5kS2V5cygnYXBwaXVtLmlvJyk7XG4gICAgYXdhaXQgYnV0dG9uLmNsaWNrKCk7XG5cbiAgICBhd2FpdCBkcml2ZXIuY29udGV4dCgnV0VCVklFV18xJyk7XG4gICAgbGV0IHRpdGxlID0gYXdhaXQgZHJpdmVyLnRpdGxlKCk7XG4gICAgdGl0bGUuc2hvdWxkLmVxdWFsKCdBcHBpdW06IE1vYmlsZSBBcHAgQXV0b21hdGlvbiBNYWRlIEF3ZXNvbWUuJyk7XG5cbiAgICBhd2FpdCBkcml2ZXIucXVpdCgpO1xuICB9KTtcblxufSk7XG4iXX0=