UNPKG

gst-atom-xcuitest-driver

Version:

ATOM driver for iOS using XCUITest for backend

88 lines (65 loc) 8.69 kB
"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); Object.defineProperty(exports, "__esModule", { value: true }); exports.default = exports.IOSCrashLog = void 0; require("source-map-support/register"); var _gstAtomIosDriver = require("gst-atom-ios-driver"); var _appiumSupport = require("appium-support"); var _bluebird = _interopRequireDefault(require("bluebird")); var _logger = _interopRequireDefault(require("../logger")); var _gstAtomIosDevice = require("gst-atom-ios-device"); var _path = _interopRequireDefault(require("path")); class IOSCrashLog extends _gstAtomIosDriver.IOSCrashLog { constructor(opts = {}) { super(opts.udid ? _path.default.resolve(process.env.HOME, 'Library', 'Logs', 'CrashReporter', 'MobileDevice') : _path.default.resolve(process.env.HOME, 'Library', 'Logs', 'DiagnosticReports')); this.udid = opts.udid; this.phoneName = null; this.sim = opts.sim; this.usbmuxdRemoteHost = opts.usbmuxdRemoteHost; this.usbmuxdRemotePort = opts.usbmuxdRemotePort; } async getCrashes() { let crashLogsRoot = this.logDir; if (this.udid) { var options = { udid: this.udid, usbmuxdRemoteHost: usbmuxdRemoteHost, usbmuxdRemotePort: usbmuxdRemotePort }; this.phoneName = this.phoneName || (await _gstAtomIosDevice.utilities.getDeviceName(null, options)); crashLogsRoot = _path.default.resolve(crashLogsRoot, this.phoneName); } if (!(await _appiumSupport.fs.exists(crashLogsRoot))) { _logger.default.debug(`Crash reports root '${crashLogsRoot}' does not exist. Got nothing to gather.`); return []; } const foundFiles = await _appiumSupport.fs.glob(`${crashLogsRoot}/**/*.crash`); if (this.udid) { return foundFiles; } return await _bluebird.default.filter(foundFiles, async x => { try { const content = await _appiumSupport.fs.readFile(x, 'utf8'); return content.toUpperCase().includes(this.sim.udid.toUpperCase()); } catch (err) { return false; } }); } async filesToJSON(paths) { return await _bluebird.default.map(paths, async fullPath => { const stat = await _appiumSupport.fs.stat(fullPath); return { timestamp: stat.ctime.getTime(), level: 'ALL', message: await _appiumSupport.fs.readFile(fullPath, 'utf8') }; }); } } exports.IOSCrashLog = IOSCrashLog; var _default = IOSCrashLog; exports.default = _default;require('source-map-support').install(); //# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImxpYi9kZXZpY2UtbG9nL2lvcy1jcmFzaC1sb2cuanMiXSwibmFtZXMiOlsiSU9TQ3Jhc2hMb2ciLCJJT1NEcml2ZXJJT1NDcmFzaExvZyIsImNvbnN0cnVjdG9yIiwib3B0cyIsInVkaWQiLCJwYXRoIiwicmVzb2x2ZSIsInByb2Nlc3MiLCJlbnYiLCJIT01FIiwicGhvbmVOYW1lIiwic2ltIiwidXNibXV4ZFJlbW90ZUhvc3QiLCJ1c2JtdXhkUmVtb3RlUG9ydCIsImdldENyYXNoZXMiLCJjcmFzaExvZ3NSb290IiwibG9nRGlyIiwib3B0aW9ucyIsInV0aWxpdGllcyIsImdldERldmljZU5hbWUiLCJmcyIsImV4aXN0cyIsImxvZyIsImRlYnVnIiwiZm91bmRGaWxlcyIsImdsb2IiLCJCIiwiZmlsdGVyIiwieCIsImNvbnRlbnQiLCJyZWFkRmlsZSIsInRvVXBwZXJDYXNlIiwiaW5jbHVkZXMiLCJlcnIiLCJmaWxlc1RvSlNPTiIsInBhdGhzIiwibWFwIiwiZnVsbFBhdGgiLCJzdGF0IiwidGltZXN0YW1wIiwiY3RpbWUiLCJnZXRUaW1lIiwibGV2ZWwiLCJtZXNzYWdlIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7OztBQUFBOztBQUNBOztBQUNBOztBQUNBOztBQUNBOztBQUNBOztBQUVBLE1BQU1BLFdBQU4sU0FBMEJDLDZCQUExQixDQUErQztBQUM3Q0MsRUFBQUEsV0FBVyxDQUFFQyxJQUFJLEdBQUcsRUFBVCxFQUFhO0FBQ3RCLFVBQU1BLElBQUksQ0FBQ0MsSUFBTCxHQUNKQyxjQUFLQyxPQUFMLENBQWFDLE9BQU8sQ0FBQ0MsR0FBUixDQUFZQyxJQUF6QixFQUErQixTQUEvQixFQUEwQyxNQUExQyxFQUFrRCxlQUFsRCxFQUFtRSxjQUFuRSxDQURJLEdBRUpKLGNBQUtDLE9BQUwsQ0FBYUMsT0FBTyxDQUFDQyxHQUFSLENBQVlDLElBQXpCLEVBQStCLFNBQS9CLEVBQTBDLE1BQTFDLEVBQWtELG1CQUFsRCxDQUZGO0FBR0EsU0FBS0wsSUFBTCxHQUFZRCxJQUFJLENBQUNDLElBQWpCO0FBQ0EsU0FBS00sU0FBTCxHQUFpQixJQUFqQjtBQUNBLFNBQUtDLEdBQUwsR0FBV1IsSUFBSSxDQUFDUSxHQUFoQjtBQUNBLFNBQUtDLGlCQUFMLEdBQXlCVCxJQUFJLENBQUNTLGlCQUE5QjtBQUNBLFNBQUtDLGlCQUFMLEdBQXlCVixJQUFJLENBQUNVLGlCQUE5QjtBQUNEOztBQUVELFFBQU1DLFVBQU4sR0FBb0I7QUFDbEIsUUFBSUMsYUFBYSxHQUFHLEtBQUtDLE1BQXpCOztBQUNBLFFBQUksS0FBS1osSUFBVCxFQUFlO0FBQ2IsVUFBSWEsT0FBTyxHQUFHO0FBQ1piLFFBQUFBLElBQUksRUFBRSxLQUFLQSxJQURDO0FBRVpRLFFBQUFBLGlCQUFpQixFQUFFQSxpQkFGUDtBQUdaQyxRQUFBQSxpQkFBaUIsRUFBRUE7QUFIUCxPQUFkO0FBS0EsV0FBS0gsU0FBTCxHQUFpQixLQUFLQSxTQUFMLEtBQWtCLE1BQU1RLDRCQUFVQyxhQUFWLENBQXdCLElBQXhCLEVBQThCRixPQUE5QixDQUF4QixDQUFqQjtBQUNBRixNQUFBQSxhQUFhLEdBQUdWLGNBQUtDLE9BQUwsQ0FBYVMsYUFBYixFQUE0QixLQUFLTCxTQUFqQyxDQUFoQjtBQUNEOztBQUNELFFBQUksRUFBQyxNQUFNVSxrQkFBR0MsTUFBSCxDQUFVTixhQUFWLENBQVAsQ0FBSixFQUFxQztBQUNuQ08sc0JBQUlDLEtBQUosQ0FBVyx1QkFBc0JSLGFBQWMsMENBQS9DOztBQUNBLGFBQU8sRUFBUDtBQUNEOztBQUNELFVBQU1TLFVBQVUsR0FBRyxNQUFNSixrQkFBR0ssSUFBSCxDQUFTLEdBQUVWLGFBQWMsYUFBekIsQ0FBekI7O0FBQ0EsUUFBSSxLQUFLWCxJQUFULEVBQWU7QUFDYixhQUFPb0IsVUFBUDtBQUNEOztBQUVELFdBQU8sTUFBTUUsa0JBQUVDLE1BQUYsQ0FBU0gsVUFBVCxFQUFxQixNQUFPSSxDQUFQLElBQWE7QUFDN0MsVUFBSTtBQUNGLGNBQU1DLE9BQU8sR0FBRyxNQUFNVCxrQkFBR1UsUUFBSCxDQUFZRixDQUFaLEVBQWUsTUFBZixDQUF0QjtBQUNBLGVBQU9DLE9BQU8sQ0FBQ0UsV0FBUixHQUFzQkMsUUFBdEIsQ0FBK0IsS0FBS3JCLEdBQUwsQ0FBU1AsSUFBVCxDQUFjMkIsV0FBZCxFQUEvQixDQUFQO0FBQ0QsT0FIRCxDQUdFLE9BQU9FLEdBQVAsRUFBWTtBQUNaLGVBQU8sS0FBUDtBQUNEO0FBQ0YsS0FQWSxDQUFiO0FBUUQ7O0FBRUQsUUFBTUMsV0FBTixDQUFtQkMsS0FBbkIsRUFBMEI7QUFDeEIsV0FBTyxNQUFNVCxrQkFBRVUsR0FBRixDQUFNRCxLQUFOLEVBQWEsTUFBT0UsUUFBUCxJQUFvQjtBQUM1QyxZQUFNQyxJQUFJLEdBQUcsTUFBTWxCLGtCQUFHa0IsSUFBSCxDQUFRRCxRQUFSLENBQW5CO0FBQ0EsYUFBTztBQUNMRSxRQUFBQSxTQUFTLEVBQUVELElBQUksQ0FBQ0UsS0FBTCxDQUFXQyxPQUFYLEVBRE47QUFFTEMsUUFBQUEsS0FBSyxFQUFFLEtBRkY7QUFHTEMsUUFBQUEsT0FBTyxFQUFFLE1BQU12QixrQkFBR1UsUUFBSCxDQUFZTyxRQUFaLEVBQXNCLE1BQXRCO0FBSFYsT0FBUDtBQUtELEtBUFksQ0FBYjtBQVFEOztBQW5ENEM7OztlQXVEaENyQyxXIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSU9TQ3Jhc2hMb2cgYXMgSU9TRHJpdmVySU9TQ3Jhc2hMb2cgfSBmcm9tICdnc3QtYXRvbS1pb3MtZHJpdmVyJztcbmltcG9ydCB7IGZzIH0gZnJvbSAnYXBwaXVtLXN1cHBvcnQnO1xuaW1wb3J0IEIgZnJvbSAnYmx1ZWJpcmQnO1xuaW1wb3J0IGxvZyBmcm9tICcuLi9sb2dnZXInO1xuaW1wb3J0IHsgdXRpbGl0aWVzIH0gZnJvbSAnZ3N0LWF0b20taW9zLWRldmljZSc7XG5pbXBvcnQgcGF0aCBmcm9tICdwYXRoJztcblxuY2xhc3MgSU9TQ3Jhc2hMb2cgZXh0ZW5kcyBJT1NEcml2ZXJJT1NDcmFzaExvZyB7XG4gIGNvbnN0cnVjdG9yIChvcHRzID0ge30pIHtcbiAgICBzdXBlcihvcHRzLnVkaWQgP1xuICAgICAgcGF0aC5yZXNvbHZlKHByb2Nlc3MuZW52LkhPTUUsICdMaWJyYXJ5JywgJ0xvZ3MnLCAnQ3Jhc2hSZXBvcnRlcicsICdNb2JpbGVEZXZpY2UnKSA6XG4gICAgICBwYXRoLnJlc29sdmUocHJvY2Vzcy5lbnYuSE9NRSwgJ0xpYnJhcnknLCAnTG9ncycsICdEaWFnbm9zdGljUmVwb3J0cycpKTtcbiAgICB0aGlzLnVkaWQgPSBvcHRzLnVkaWQ7XG4gICAgdGhpcy5waG9uZU5hbWUgPSBudWxsO1xuICAgIHRoaXMuc2ltID0gb3B0cy5zaW07XG4gICAgdGhpcy51c2JtdXhkUmVtb3RlSG9zdCA9IG9wdHMudXNibXV4ZFJlbW90ZUhvc3Q7XG4gICAgdGhpcy51c2JtdXhkUmVtb3RlUG9ydCA9IG9wdHMudXNibXV4ZFJlbW90ZVBvcnQ7XG4gIH1cblxuICBhc3luYyBnZXRDcmFzaGVzICgpIHtcbiAgICBsZXQgY3Jhc2hMb2dzUm9vdCA9IHRoaXMubG9nRGlyO1xuICAgIGlmICh0aGlzLnVkaWQpIHtcbiAgICAgIHZhciBvcHRpb25zID0ge1xuICAgICAgICB1ZGlkOiB0aGlzLnVkaWQsXG4gICAgICAgIHVzYm11eGRSZW1vdGVIb3N0OiB1c2JtdXhkUmVtb3RlSG9zdCxcbiAgICAgICAgdXNibXV4ZFJlbW90ZVBvcnQ6IHVzYm11eGRSZW1vdGVQb3J0XG4gICAgICB9O1xuICAgICAgdGhpcy5waG9uZU5hbWUgPSB0aGlzLnBob25lTmFtZSB8fCBhd2FpdCB1dGlsaXRpZXMuZ2V0RGV2aWNlTmFtZShudWxsLCBvcHRpb25zKTtcbiAgICAgIGNyYXNoTG9nc1Jvb3QgPSBwYXRoLnJlc29sdmUoY3Jhc2hMb2dzUm9vdCwgdGhpcy5waG9uZU5hbWUpO1xuICAgIH1cbiAgICBpZiAoIWF3YWl0IGZzLmV4aXN0cyhjcmFzaExvZ3NSb290KSkge1xuICAgICAgbG9nLmRlYnVnKGBDcmFzaCByZXBvcnRzIHJvb3QgJyR7Y3Jhc2hMb2dzUm9vdH0nIGRvZXMgbm90IGV4aXN0LiBHb3Qgbm90aGluZyB0byBnYXRoZXIuYCk7XG4gICAgICByZXR1cm4gW107XG4gICAgfVxuICAgIGNvbnN0IGZvdW5kRmlsZXMgPSBhd2FpdCBmcy5nbG9iKGAke2NyYXNoTG9nc1Jvb3R9LyoqLyouY3Jhc2hgKTtcbiAgICBpZiAodGhpcy51ZGlkKSB7XG4gICAgICByZXR1cm4gZm91bmRGaWxlcztcbiAgICB9XG4gICAgLy8gRm9yIFNpbXVsYXRvciBvbmx5IGluY2x1ZGUgZmlsZXMsIHRoYXQgY29udGFpbiBjdXJyZW50IFVESURcbiAgICByZXR1cm4gYXdhaXQgQi5maWx0ZXIoZm91bmRGaWxlcywgYXN5bmMgKHgpID0+IHtcbiAgICAgIHRyeSB7XG4gICAgICAgIGNvbnN0IGNvbnRlbnQgPSBhd2FpdCBmcy5yZWFkRmlsZSh4LCAndXRmOCcpO1xuICAgICAgICByZXR1cm4gY29udGVudC50b1VwcGVyQ2FzZSgpLmluY2x1ZGVzKHRoaXMuc2ltLnVkaWQudG9VcHBlckNhc2UoKSk7XG4gICAgICB9IGNhdGNoIChlcnIpIHtcbiAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG5cbiAgYXN5bmMgZmlsZXNUb0pTT04gKHBhdGhzKSB7XG4gICAgcmV0dXJuIGF3YWl0IEIubWFwKHBhdGhzLCBhc3luYyAoZnVsbFBhdGgpID0+IHtcbiAgICAgIGNvbnN0IHN0YXQgPSBhd2FpdCBmcy5zdGF0KGZ1bGxQYXRoKTtcbiAgICAgIHJldHVybiB7XG4gICAgICAgIHRpbWVzdGFtcDogc3RhdC5jdGltZS5nZXRUaW1lKCksXG4gICAgICAgIGxldmVsOiAnQUxMJyxcbiAgICAgICAgbWVzc2FnZTogYXdhaXQgZnMucmVhZEZpbGUoZnVsbFBhdGgsICd1dGY4JylcbiAgICAgIH07XG4gICAgfSk7XG4gIH1cbn1cblxuZXhwb3J0IHsgSU9TQ3Jhc2hMb2cgfTtcbmV4cG9ydCBkZWZhdWx0IElPU0NyYXNoTG9nO1xuIl0sImZpbGUiOiJsaWIvZGV2aWNlLWxvZy9pb3MtY3Jhc2gtbG9nLmpzIiwic291cmNlUm9vdCI6Ii4uLy4uLy4uIn0=