UNPKG

appium-adb-test

Version:

Android Debug Bridge interface

135 lines (98 loc) 7.57 kB
'use strict'; var _regeneratorRuntime = require('babel-runtime/regenerator')['default']; var _interopRequireDefault = require('babel-runtime/helpers/interop-require-default')['default']; var _this = this; var _chai = require('chai'); var _chai2 = _interopRequireDefault(_chai); var _chaiAsPromised = require('chai-as-promised'); var _chaiAsPromised2 = _interopRequireDefault(_chaiAsPromised); var _ = require('../..'); var _2 = _interopRequireDefault(_); var _path = require('path'); var _path2 = _interopRequireDefault(_path); var _libHelpersJs = require('../../lib/helpers.js'); var _asyncbox = require('asyncbox'); _chai2['default'].use(_chaiAsPromised2['default']); _chai2['default'].should(); var fingerprintPath = _path2['default'].resolve(_libHelpersJs.rootDir, 'test', 'fixtures', 'Fingerprint.apk'); var pkg = 'com.example.fingerprint'; var activity = '.MainActivity'; var secretActivity = '.SecretActivity'; describe('adb emu commands', function () { var adb = undefined; 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(_2['default'].createADB()); case 2: adb = context$2$0.sent; context$2$0.next = 5; return _regeneratorRuntime.awrap(adb.getApiLevel()); case 5: context$2$0.t0 = context$2$0.sent; context$2$0.t1 = parseInt(context$2$0.t0, 10); if (!(context$2$0.t1 < 23)) { context$2$0.next = 9; break; } this.skip(); case 9: case 'end': return context$2$0.stop(); } }, null, this); }); it('fingerprint should open the secret activity on emitted valid finger touch event', function callee$1$0() { var app; 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(adb.isAppInstalled(pkg)); case 2: if (!context$2$0.sent) { context$2$0.next = 7; break; } context$2$0.next = 5; return _regeneratorRuntime.awrap(adb.forceStop(pkg)); case 5: context$2$0.next = 7; return _regeneratorRuntime.awrap(adb.uninstallApk(pkg)); case 7: context$2$0.next = 9; return _regeneratorRuntime.awrap(adb.install(fingerprintPath)); case 9: context$2$0.next = 11; return _regeneratorRuntime.awrap(adb.startApp({ pkg: pkg, activity: activity })); case 11: context$2$0.next = 13; return _regeneratorRuntime.awrap((0, _asyncbox.sleep)(500)); case 13: context$2$0.next = 15; return _regeneratorRuntime.awrap(adb.getFocusedPackageAndActivity()); case 15: app = context$2$0.sent; app.appActivity.should.equal(activity); context$2$0.next = 19; return _regeneratorRuntime.awrap(adb.fingerprint(1111)); case 19: context$2$0.next = 21; return _regeneratorRuntime.awrap((0, _asyncbox.sleep)(2500)); case 21: context$2$0.next = 23; return _regeneratorRuntime.awrap(adb.getFocusedPackageAndActivity()); case 23: app = context$2$0.sent; app.appActivity.should.equal(secretActivity); case 25: case 'end': return context$2$0.stop(); } }, null, _this); }); }); // the test here only works if we have API level 23 or above //# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInRlc3QvZnVuY3Rpb25hbC9hZGItZW11LWNvbW1hbmRzLWUyZS1zcGVjcy5qcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7OztvQkFBaUIsTUFBTTs7Ozs4QkFDSSxrQkFBa0I7Ozs7Z0JBQzdCLE9BQU87Ozs7b0JBQ04sTUFBTTs7Ozs0QkFDQyxzQkFBc0I7O3dCQUN4QixVQUFVOztBQUdoQyxrQkFBSyxHQUFHLDZCQUFnQixDQUFDO0FBQ3pCLGtCQUFLLE1BQU0sRUFBRSxDQUFDOztBQUVkLElBQU0sZUFBZSxHQUFHLGtCQUFLLE9BQU8sd0JBQVUsTUFBTSxFQUFFLFVBQVUsRUFBRSxpQkFBaUIsQ0FBQyxDQUFDO0FBQ3JGLElBQU0sR0FBRyxHQUFHLHlCQUF5QixDQUFDO0FBQ3RDLElBQU0sUUFBUSxHQUFHLGVBQWUsQ0FBQztBQUNqQyxJQUFNLGNBQWMsR0FBRyxpQkFBaUIsQ0FBQzs7QUFFekMsUUFBUSxDQUFDLGtCQUFrQixFQUFFLFlBQU07QUFDakMsTUFBSSxHQUFHLFlBQUEsQ0FBQztBQUNSLFFBQU0sQ0FBQzs7Ozs7MkNBQ08sY0FBSSxTQUFTLEVBQUU7OztBQUEzQixhQUFHOzsyQ0FHZ0IsR0FBRyxDQUFDLFdBQVcsRUFBRTs7OzsyQkFBaEMsUUFBUSxpQkFBMEIsRUFBRTs7aUNBQUksRUFBRTs7Ozs7QUFDNUMsY0FBSSxDQUFDLElBQUksRUFBRSxDQUFDOzs7Ozs7O0dBRWYsQ0FBQyxDQUFDO0FBQ0gsSUFBRSxDQUFDLGlGQUFpRixFQUFFO1FBU2hGLEdBQUc7Ozs7OzJDQVJHLEdBQUcsQ0FBQyxjQUFjLENBQUMsR0FBRyxDQUFDOzs7Ozs7Ozs7MkNBQ3pCLEdBQUcsQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDOzs7OzJDQUNsQixHQUFHLENBQUMsWUFBWSxDQUFDLEdBQUcsQ0FBQzs7OzsyQ0FFdkIsR0FBRyxDQUFDLE9BQU8sQ0FBQyxlQUFlLENBQUM7Ozs7MkNBQzVCLEdBQUcsQ0FBQyxRQUFRLENBQUMsRUFBQyxHQUFHLEVBQUgsR0FBRyxFQUFFLFFBQVEsRUFBUixRQUFRLEVBQUMsQ0FBQzs7OzsyQ0FDN0IscUJBQU0sR0FBRyxDQUFDOzs7OzJDQUVBLEdBQUcsQ0FBQyw0QkFBNEIsRUFBRTs7O0FBQTlDLGFBQUc7O0FBQ1AsYUFBRyxDQUFDLFdBQVcsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxDQUFDOzsyQ0FDakMsR0FBRyxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUM7Ozs7MkNBQ3JCLHFCQUFNLElBQUksQ0FBQzs7OzsyQ0FFTCxHQUFHLENBQUMsNEJBQTRCLEVBQUU7OztBQUE5QyxhQUFHOztBQUNILGFBQUcsQ0FBQyxXQUFXLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxjQUFjLENBQUMsQ0FBQzs7Ozs7OztHQUM5QyxDQUFDLENBQUM7Q0FDSixDQUFDLENBQUMiLCJmaWxlIjoidGVzdC9mdW5jdGlvbmFsL2FkYi1lbXUtY29tbWFuZHMtZTJlLXNwZWNzLmpzIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IGNoYWkgZnJvbSAnY2hhaSc7XHJcbmltcG9ydCBjaGFpQXNQcm9taXNlZCBmcm9tICdjaGFpLWFzLXByb21pc2VkJztcclxuaW1wb3J0IEFEQiBmcm9tICcuLi8uLic7XHJcbmltcG9ydCBwYXRoIGZyb20gJ3BhdGgnO1xyXG5pbXBvcnQgeyByb290RGlyIH0gZnJvbSAnLi4vLi4vbGliL2hlbHBlcnMuanMnO1xyXG5pbXBvcnQgeyBzbGVlcCB9IGZyb20gJ2FzeW5jYm94JztcclxuXHJcblxyXG5jaGFpLnVzZShjaGFpQXNQcm9taXNlZCk7XHJcbmNoYWkuc2hvdWxkKCk7XHJcblxyXG5jb25zdCBmaW5nZXJwcmludFBhdGggPSBwYXRoLnJlc29sdmUocm9vdERpciwgJ3Rlc3QnLCAnZml4dHVyZXMnLCAnRmluZ2VycHJpbnQuYXBrJyk7XHJcbmNvbnN0IHBrZyA9ICdjb20uZXhhbXBsZS5maW5nZXJwcmludCc7XHJcbmNvbnN0IGFjdGl2aXR5ID0gJy5NYWluQWN0aXZpdHknO1xyXG5jb25zdCBzZWNyZXRBY3Rpdml0eSA9ICcuU2VjcmV0QWN0aXZpdHknO1xyXG5cclxuZGVzY3JpYmUoJ2FkYiBlbXUgY29tbWFuZHMnLCAoKSA9PiB7XHJcbiAgbGV0IGFkYjtcclxuICBiZWZvcmUoYXN5bmMgZnVuY3Rpb24gKCkge1xyXG4gICAgYWRiID0gYXdhaXQgQURCLmNyZWF0ZUFEQigpO1xyXG5cclxuICAgIC8vIHRoZSB0ZXN0IGhlcmUgb25seSB3b3JrcyBpZiB3ZSBoYXZlIEFQSSBsZXZlbCAyMyBvciBhYm92ZVxyXG4gICAgaWYgKHBhcnNlSW50KGF3YWl0IGFkYi5nZXRBcGlMZXZlbCgpLCAxMCkgPCAyMykge1xyXG4gICAgICB0aGlzLnNraXAoKTtcclxuICAgIH1cclxuICB9KTtcclxuICBpdCgnZmluZ2VycHJpbnQgc2hvdWxkIG9wZW4gdGhlIHNlY3JldCBhY3Rpdml0eSBvbiBlbWl0dGVkIHZhbGlkIGZpbmdlciB0b3VjaCBldmVudCcsIGFzeW5jICgpID0+IHtcclxuICAgIGlmIChhd2FpdCBhZGIuaXNBcHBJbnN0YWxsZWQocGtnKSkge1xyXG4gICAgICBhd2FpdCBhZGIuZm9yY2VTdG9wKHBrZyk7XHJcbiAgICAgIGF3YWl0IGFkYi51bmluc3RhbGxBcGsocGtnKTtcclxuICAgIH1cclxuICAgIGF3YWl0IGFkYi5pbnN0YWxsKGZpbmdlcnByaW50UGF0aCk7XHJcbiAgICBhd2FpdCBhZGIuc3RhcnRBcHAoe3BrZywgYWN0aXZpdHl9KTtcclxuICAgIGF3YWl0IHNsZWVwKDUwMCk7XHJcblxyXG4gICAgbGV0IGFwcCA9IGF3YWl0IGFkYi5nZXRGb2N1c2VkUGFja2FnZUFuZEFjdGl2aXR5KCk7XHJcbiAgICBhcHAuYXBwQWN0aXZpdHkuc2hvdWxkLmVxdWFsKGFjdGl2aXR5KTtcclxuICAgIGF3YWl0IGFkYi5maW5nZXJwcmludCgxMTExKTtcclxuICAgIGF3YWl0IHNsZWVwKDI1MDApO1xyXG5cclxuICAgIGFwcCA9IGF3YWl0IGFkYi5nZXRGb2N1c2VkUGFja2FnZUFuZEFjdGl2aXR5KCk7XHJcbiAgICBhcHAuYXBwQWN0aXZpdHkuc2hvdWxkLmVxdWFsKHNlY3JldEFjdGl2aXR5KTtcclxuICB9KTtcclxufSk7XHJcbiJdLCJzb3VyY2VSb290IjoiLi5cXC4uXFwuLiJ9