@appium/support 2.55.4 → 2.57.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build/lib/env.d.ts +54 -0
- package/build/lib/env.d.ts.map +1 -0
- package/build/lib/env.js +102 -0
- package/build/lib/fs.d.ts +221 -0
- package/build/lib/fs.d.ts.map +1 -0
- package/build/lib/fs.js +74 -56
- package/build/lib/image-util.d.ts +56 -0
- package/build/lib/image-util.d.ts.map +1 -0
- package/build/lib/image-util.js +3 -6
- package/build/lib/index.d.ts +38 -0
- package/build/lib/index.d.ts.map +1 -0
- package/build/lib/index.js +36 -18
- package/build/lib/log-internal.d.ts +74 -0
- package/build/lib/log-internal.d.ts.map +1 -0
- package/build/lib/log-internal.js +11 -21
- package/build/lib/logger.d.ts +3 -0
- package/build/lib/logger.d.ts.map +1 -0
- package/build/lib/logger.js +2 -4
- package/build/lib/logging.d.ts +45 -0
- package/build/lib/logging.d.ts.map +1 -0
- package/build/lib/logging.js +12 -16
- package/build/lib/mjpeg.d.ts +65 -0
- package/build/lib/mjpeg.d.ts.map +1 -0
- package/build/lib/mjpeg.js +12 -7
- package/build/lib/mkdirp.d.ts +3 -0
- package/build/lib/mkdirp.d.ts.map +1 -0
- package/build/lib/mkdirp.js +7 -11
- package/build/lib/net.d.ts +95 -0
- package/build/lib/net.d.ts.map +1 -0
- package/build/lib/net.js +42 -26
- package/build/lib/node.d.ts +26 -0
- package/build/lib/node.d.ts.map +1 -0
- package/build/lib/node.js +102 -3
- package/build/lib/npm.d.ts +123 -0
- package/build/lib/npm.d.ts.map +1 -0
- package/build/lib/npm.js +217 -0
- package/build/lib/plist.d.ts +43 -0
- package/build/lib/plist.d.ts.map +1 -0
- package/build/lib/plist.js +2 -4
- package/build/lib/process.d.ts +3 -0
- package/build/lib/process.d.ts.map +1 -0
- package/build/lib/process.js +2 -4
- package/build/lib/system.d.ts +7 -0
- package/build/lib/system.d.ts.map +1 -0
- package/build/lib/system.js +2 -4
- package/build/lib/tempdir.d.ts +63 -0
- package/build/lib/tempdir.d.ts.map +1 -0
- package/build/lib/tempdir.js +4 -9
- package/build/lib/timing.d.ts +46 -0
- package/build/lib/timing.d.ts.map +1 -0
- package/build/lib/timing.js +2 -4
- package/build/lib/util.d.ts +183 -0
- package/build/lib/util.d.ts.map +1 -0
- package/build/lib/util.js +9 -15
- package/build/lib/zip.d.ts +180 -0
- package/build/lib/zip.d.ts.map +1 -0
- package/build/lib/zip.js +9 -9
- package/build/tsconfig.tsbuildinfo +1 -0
- package/lib/env.js +162 -0
- package/lib/fs.js +198 -69
- package/lib/image-util.js +23 -7
- package/lib/index.js +6 -6
- package/lib/log-internal.js +31 -38
- package/lib/logging.js +41 -17
- package/lib/mjpeg.js +14 -5
- package/lib/mkdirp.js +3 -6
- package/lib/net.js +116 -60
- package/lib/node.js +107 -4
- package/lib/npm.js +278 -0
- package/lib/plist.js +3 -1
- package/lib/tempdir.js +14 -13
- package/lib/util.js +36 -33
- package/lib/zip.js +31 -21
- package/package.json +31 -13
- package/build/test/assets/sample_binary.plist +0 -0
- package/build/test/assets/sample_text.plist +0 -28
- package/build/test/fs-specs.js +0 -264
- package/build/test/helpers.js +0 -35
- package/build/test/image-util-e2e-specs.js +0 -78
- package/build/test/index-specs.js +0 -49
- package/build/test/log-internals-specs.js +0 -97
- package/build/test/logger/helpers.js +0 -71
- package/build/test/logger/logger-force-specs.js +0 -41
- package/build/test/logger/logger-normal-specs.js +0 -113
- package/build/test/logger/logger-test-specs.js +0 -40
- package/build/test/mjpeg-e2e-specs.js +0 -96
- package/build/test/net-e2e-specs.js +0 -32
- package/build/test/node-e2e-specs.js +0 -22
- package/build/test/plist-specs.js +0 -54
- package/build/test/process-specs.js +0 -104
- package/build/test/system-specs.js +0 -136
- package/build/test/tempdir-specs.js +0 -86
- package/build/test/timing-specs.js +0 -125
- package/build/test/util-e2e-specs.js +0 -136
- package/build/test/util-specs.js +0 -537
- package/build/test/zip-e2e-specs.js +0 -233
|
@@ -1,96 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
|
|
5
|
-
require("source-map-support/register");
|
|
6
|
-
|
|
7
|
-
var _lodash = _interopRequireDefault(require("lodash"));
|
|
8
|
-
|
|
9
|
-
var _lib = require("../lib");
|
|
10
|
-
|
|
11
|
-
var _bluebird = _interopRequireDefault(require("bluebird"));
|
|
12
|
-
|
|
13
|
-
var _http = _interopRequireDefault(require("http"));
|
|
14
|
-
|
|
15
|
-
var _mjpegServer = _interopRequireDefault(require("mjpeg-server"));
|
|
16
|
-
|
|
17
|
-
var _getPort = _interopRequireDefault(require("get-port"));
|
|
18
|
-
|
|
19
|
-
const {
|
|
20
|
-
MJpegStream
|
|
21
|
-
} = _lib.mjpeg;
|
|
22
|
-
const TEST_IMG_JPG = '/9j/4QAYRXhpZgAASUkqAAgAAAAAAAAAAAAAAP/sABFEdWNreQABAAQAAAAeAAD/4QOBaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLwA8P3hwYWNrZXQgYmVnaW49Iu+7vyIgaWQ9Ilc1TTBNcENlaGlIenJlU3pOVGN6a2M5ZCI/PiA8eDp4bXBtZXRhIHhtbG5zOng9ImFkb2JlOm5zOm1ldGEvIiB4OnhtcHRrPSJBZG9iZSBYTVAgQ29yZSA1LjYtYzE0MCA3OS4xNjA0NTEsIDIwMTcvMDUvMDYtMDE6MDg6MjEgICAgICAgICI+IDxyZGY6UkRGIHhtbG5zOnJkZj0iaHR0cDovL3d3dy53My5vcmcvMTk5OS8wMi8yMi1yZGYtc3ludGF4LW5zIyI+IDxyZGY6RGVzY3JpcHRpb24gcmRmOmFib3V0PSIiIHhtbG5zOnhtcE1NPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvbW0vIiB4bWxuczpzdFJlZj0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL3NUeXBlL1Jlc291cmNlUmVmIyIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bXBNTTpPcmlnaW5hbERvY3VtZW50SUQ9InhtcC5kaWQ6NGY5ODc1OTctZGE2My00Y2M0LTkzNDMtNGYyNjgzMGUwNjk3IiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOjlDMzI3QkY0N0Q3NTExRThCMTlDOTVDMDc2RDE5MDY5IiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOjlDMzI3QkYzN0Q3NTExRThCMTlDOTVDMDc2RDE5MDY5IiB4bXA6Q3JlYXRvclRvb2w9IkFkb2JlIFBob3Rvc2hvcCBDQyAyMDE4IChNYWNpbnRvc2gpIj4gPHhtcE1NOkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6NGY5ODc1OTctZGE2My00Y2M0LTkzNDMtNGYyNjgzMGUwNjk3IiBzdFJlZjpkb2N1bWVudElEPSJ4bXAuZGlkOjRmOTg3NTk3LWRhNjMtNGNjNC05MzQzLTRmMjY4MzBlMDY5NyIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/Pv/uAA5BZG9iZQBkwAAAAAH/2wCEABALCwsMCxAMDBAXDw0PFxsUEBAUGx8XFxcXFx8eFxoaGhoXHh4jJSclIx4vLzMzLy9AQEBAQEBAQEBAQEBAQEABEQ8PERMRFRISFRQRFBEUGhQWFhQaJhoaHBoaJjAjHh4eHiMwKy4nJycuKzU1MDA1NUBAP0BAQEBAQEBAQEBAQP/AABEIACAAIAMBIgACEQEDEQH/xABgAAEAAwEAAAAAAAAAAAAAAAAABAUHCAEBAAAAAAAAAAAAAAAAAAAAABAAAQMCAgsAAAAAAAAAAAAAAAECBBEDEgYhMRODo7PTVAUWNhEBAAAAAAAAAAAAAAAAAAAAAP/aAAwDAQACEQMRAD8Az8AAdAAAAAAI8+fE8dEuTZtzZR7VMb6OdTE5GJoYirrUp/e8qd9wb3TGe/lJ2551sx8D/9k=';
|
|
23
|
-
const MJPEG_HOST = '127.0.0.1';
|
|
24
|
-
|
|
25
|
-
function initMJpegServer(port, intMs = 300, times = 20) {
|
|
26
|
-
const server = _http.default.createServer(async function (req, res) {
|
|
27
|
-
const mJpegReqHandler = _mjpegServer.default.createReqHandler(req, res);
|
|
28
|
-
|
|
29
|
-
const jpg = Buffer.from(TEST_IMG_JPG, 'base64');
|
|
30
|
-
|
|
31
|
-
for (let i = 0; i < times; i++) {
|
|
32
|
-
await _bluebird.default.delay(intMs);
|
|
33
|
-
|
|
34
|
-
mJpegReqHandler._write(jpg, null, _lodash.default.noop);
|
|
35
|
-
}
|
|
36
|
-
|
|
37
|
-
mJpegReqHandler.close();
|
|
38
|
-
}).listen(port);
|
|
39
|
-
|
|
40
|
-
return server;
|
|
41
|
-
}
|
|
42
|
-
|
|
43
|
-
describe('MJpeg Stream (e2e)', function () {
|
|
44
|
-
let mJpegServer, stream;
|
|
45
|
-
let serverUrl, port;
|
|
46
|
-
before(async function () {
|
|
47
|
-
if (process.version.startsWith('v12')) {
|
|
48
|
-
return this.skip();
|
|
49
|
-
}
|
|
50
|
-
|
|
51
|
-
port = await (0, _getPort.default)();
|
|
52
|
-
serverUrl = `http://${MJPEG_HOST}:${port}`;
|
|
53
|
-
mJpegServer = await initMJpegServer(port);
|
|
54
|
-
});
|
|
55
|
-
after(function () {
|
|
56
|
-
if (mJpegServer) {
|
|
57
|
-
mJpegServer.close();
|
|
58
|
-
}
|
|
59
|
-
|
|
60
|
-
if (stream) {
|
|
61
|
-
stream.stop();
|
|
62
|
-
}
|
|
63
|
-
});
|
|
64
|
-
it('should update mjpeg stream based on new data from mjpeg server', async function () {
|
|
65
|
-
stream = new MJpegStream(serverUrl, _lodash.default.noop);
|
|
66
|
-
should.not.exist(stream.lastChunk);
|
|
67
|
-
await stream.start();
|
|
68
|
-
should.exist(stream.lastChunk);
|
|
69
|
-
stream.updateCount.should.eql(1);
|
|
70
|
-
await _bluebird.default.delay(1000);
|
|
71
|
-
stream.updateCount.should.be.above(1);
|
|
72
|
-
const startBytes = Buffer.from([0xff, 0xd8]);
|
|
73
|
-
const endBytes = Buffer.from([0xff, 0xd9]);
|
|
74
|
-
const startPos = stream.lastChunk.indexOf(startBytes);
|
|
75
|
-
const endPos = stream.lastChunk.indexOf(endBytes);
|
|
76
|
-
startPos.should.eql(0);
|
|
77
|
-
endPos.should.eql(1278);
|
|
78
|
-
const b64 = stream.lastChunkBase64;
|
|
79
|
-
b64.should.eql(TEST_IMG_JPG);
|
|
80
|
-
const png = await stream.lastChunkPNGBase64();
|
|
81
|
-
png.should.be.a('string');
|
|
82
|
-
png.indexOf('iVBOR').should.eql(0);
|
|
83
|
-
png.length.should.be.above(400);
|
|
84
|
-
stream.stop();
|
|
85
|
-
await _bluebird.default.delay(1000);
|
|
86
|
-
should.not.exist(stream.lastChunk);
|
|
87
|
-
stream.updateCount.should.eql(0);
|
|
88
|
-
});
|
|
89
|
-
it('should error out if the server does not send any images before a timeout', async function () {
|
|
90
|
-
stream = new MJpegStream(serverUrl, _lodash.default.noop);
|
|
91
|
-
await stream.start(0).should.eventually.be.rejectedWith(/never sent/);
|
|
92
|
-
});
|
|
93
|
-
});require('source-map-support').install();
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInRlc3QvbWpwZWctZTJlLXNwZWNzLmpzIl0sIm5hbWVzIjpbIk1KcGVnU3RyZWFtIiwibWpwZWciLCJURVNUX0lNR19KUEciLCJNSlBFR19IT1NUIiwiaW5pdE1KcGVnU2VydmVyIiwicG9ydCIsImludE1zIiwidGltZXMiLCJzZXJ2ZXIiLCJodHRwIiwiY3JlYXRlU2VydmVyIiwicmVxIiwicmVzIiwibUpwZWdSZXFIYW5kbGVyIiwibUpwZWdTZXJ2ZXIiLCJjcmVhdGVSZXFIYW5kbGVyIiwianBnIiwiQnVmZmVyIiwiZnJvbSIsImkiLCJCIiwiZGVsYXkiLCJfd3JpdGUiLCJfIiwibm9vcCIsImNsb3NlIiwibGlzdGVuIiwiZGVzY3JpYmUiLCJzdHJlYW0iLCJzZXJ2ZXJVcmwiLCJiZWZvcmUiLCJwcm9jZXNzIiwidmVyc2lvbiIsInN0YXJ0c1dpdGgiLCJza2lwIiwiYWZ0ZXIiLCJzdG9wIiwiaXQiLCJzaG91bGQiLCJub3QiLCJleGlzdCIsImxhc3RDaHVuayIsInN0YXJ0IiwidXBkYXRlQ291bnQiLCJlcWwiLCJiZSIsImFib3ZlIiwic3RhcnRCeXRlcyIsImVuZEJ5dGVzIiwic3RhcnRQb3MiLCJpbmRleE9mIiwiZW5kUG9zIiwiYjY0IiwibGFzdENodW5rQmFzZTY0IiwicG5nIiwibGFzdENodW5rUE5HQmFzZTY0IiwiYSIsImxlbmd0aCIsImV2ZW50dWFsbHkiLCJyZWplY3RlZFdpdGgiXSwibWFwcGluZ3MiOiI7Ozs7OztBQUFBOztBQUNBOztBQUNBOztBQUNBOztBQUNBOztBQUNBOztBQUVBLE1BQU07QUFBQ0EsRUFBQUE7QUFBRCxJQUFnQkMsVUFBdEI7QUFFQSxNQUFNQyxZQUFZLEdBQUcsOHFEQUFyQjtBQUVBLE1BQU1DLFVBQVUsR0FBRyxXQUFuQjs7QUFXQSxTQUFTQyxlQUFULENBQTBCQyxJQUExQixFQUFnQ0MsS0FBSyxHQUFHLEdBQXhDLEVBQTZDQyxLQUFLLEdBQUcsRUFBckQsRUFBeUQ7QUFDdkQsUUFBTUMsTUFBTSxHQUFHQyxjQUFLQyxZQUFMLENBQWtCLGdCQUFnQkMsR0FBaEIsRUFBcUJDLEdBQXJCLEVBQTBCO0FBQ3pELFVBQU1DLGVBQWUsR0FBR0MscUJBQVlDLGdCQUFaLENBQTZCSixHQUE3QixFQUFrQ0MsR0FBbEMsQ0FBeEI7O0FBQ0EsVUFBTUksR0FBRyxHQUFHQyxNQUFNLENBQUNDLElBQVAsQ0FBWWhCLFlBQVosRUFBMEIsUUFBMUIsQ0FBWjs7QUFHQSxTQUFLLElBQUlpQixDQUFDLEdBQUcsQ0FBYixFQUFnQkEsQ0FBQyxHQUFHWixLQUFwQixFQUEyQlksQ0FBQyxFQUE1QixFQUFnQztBQUM5QixZQUFNQyxrQkFBRUMsS0FBRixDQUFRZixLQUFSLENBQU47O0FBQ0FPLE1BQUFBLGVBQWUsQ0FBQ1MsTUFBaEIsQ0FBdUJOLEdBQXZCLEVBQTRCLElBQTVCLEVBQWtDTyxnQkFBRUMsSUFBcEM7QUFDRDs7QUFDRFgsSUFBQUEsZUFBZSxDQUFDWSxLQUFoQjtBQUNELEdBVmMsRUFVWkMsTUFWWSxDQVVMckIsSUFWSyxDQUFmOztBQVlBLFNBQU9HLE1BQVA7QUFDRDs7QUFHRG1CLFFBQVEsQ0FBQyxvQkFBRCxFQUF1QixZQUFZO0FBQ3pDLE1BQUliLFdBQUosRUFBaUJjLE1BQWpCO0FBQ0EsTUFBSUMsU0FBSixFQUFleEIsSUFBZjtBQUVBeUIsRUFBQUEsTUFBTSxDQUFDLGtCQUFrQjtBQUV2QixRQUFJQyxPQUFPLENBQUNDLE9BQVIsQ0FBZ0JDLFVBQWhCLENBQTJCLEtBQTNCLENBQUosRUFBdUM7QUFDckMsYUFBTyxLQUFLQyxJQUFMLEVBQVA7QUFDRDs7QUFFRDdCLElBQUFBLElBQUksR0FBRyxNQUFNLHVCQUFiO0FBQ0F3QixJQUFBQSxTQUFTLEdBQUksVUFBUzFCLFVBQVcsSUFBR0UsSUFBSyxFQUF6QztBQUNBUyxJQUFBQSxXQUFXLEdBQUcsTUFBTVYsZUFBZSxDQUFDQyxJQUFELENBQW5DO0FBQ0QsR0FUSyxDQUFOO0FBV0E4QixFQUFBQSxLQUFLLENBQUMsWUFBWTtBQUNoQixRQUFJckIsV0FBSixFQUFpQjtBQUNmQSxNQUFBQSxXQUFXLENBQUNXLEtBQVo7QUFDRDs7QUFDRCxRQUFJRyxNQUFKLEVBQVk7QUFDVkEsTUFBQUEsTUFBTSxDQUFDUSxJQUFQO0FBQ0Q7QUFDRixHQVBJLENBQUw7QUFTQUMsRUFBQUEsRUFBRSxDQUFDLGdFQUFELEVBQW1FLGtCQUFrQjtBQUNyRlQsSUFBQUEsTUFBTSxHQUFHLElBQUk1QixXQUFKLENBQWdCNkIsU0FBaEIsRUFBMkJOLGdCQUFFQyxJQUE3QixDQUFUO0FBQ0FjLElBQUFBLE1BQU0sQ0FBQ0MsR0FBUCxDQUFXQyxLQUFYLENBQWlCWixNQUFNLENBQUNhLFNBQXhCO0FBQ0EsVUFBTWIsTUFBTSxDQUFDYyxLQUFQLEVBQU47QUFDQUosSUFBQUEsTUFBTSxDQUFDRSxLQUFQLENBQWFaLE1BQU0sQ0FBQ2EsU0FBcEI7QUFDQWIsSUFBQUEsTUFBTSxDQUFDZSxXQUFQLENBQW1CTCxNQUFuQixDQUEwQk0sR0FBMUIsQ0FBOEIsQ0FBOUI7QUFFQSxVQUFNeEIsa0JBQUVDLEtBQUYsQ0FBUSxJQUFSLENBQU47QUFDQU8sSUFBQUEsTUFBTSxDQUFDZSxXQUFQLENBQW1CTCxNQUFuQixDQUEwQk8sRUFBMUIsQ0FBNkJDLEtBQTdCLENBQW1DLENBQW5DO0FBR0EsVUFBTUMsVUFBVSxHQUFHOUIsTUFBTSxDQUFDQyxJQUFQLENBQVksQ0FBQyxJQUFELEVBQU8sSUFBUCxDQUFaLENBQW5CO0FBQ0EsVUFBTThCLFFBQVEsR0FBRy9CLE1BQU0sQ0FBQ0MsSUFBUCxDQUFZLENBQUMsSUFBRCxFQUFPLElBQVAsQ0FBWixDQUFqQjtBQUNBLFVBQU0rQixRQUFRLEdBQUdyQixNQUFNLENBQUNhLFNBQVAsQ0FBaUJTLE9BQWpCLENBQXlCSCxVQUF6QixDQUFqQjtBQUNBLFVBQU1JLE1BQU0sR0FBR3ZCLE1BQU0sQ0FBQ2EsU0FBUCxDQUFpQlMsT0FBakIsQ0FBeUJGLFFBQXpCLENBQWY7QUFDQUMsSUFBQUEsUUFBUSxDQUFDWCxNQUFULENBQWdCTSxHQUFoQixDQUFvQixDQUFwQjtBQUNBTyxJQUFBQSxNQUFNLENBQUNiLE1BQVAsQ0FBY00sR0FBZCxDQUFrQixJQUFsQjtBQUdBLFVBQU1RLEdBQUcsR0FBR3hCLE1BQU0sQ0FBQ3lCLGVBQW5CO0FBQ0FELElBQUFBLEdBQUcsQ0FBQ2QsTUFBSixDQUFXTSxHQUFYLENBQWUxQyxZQUFmO0FBR0EsVUFBTW9ELEdBQUcsR0FBRyxNQUFNMUIsTUFBTSxDQUFDMkIsa0JBQVAsRUFBbEI7QUFDQUQsSUFBQUEsR0FBRyxDQUFDaEIsTUFBSixDQUFXTyxFQUFYLENBQWNXLENBQWQsQ0FBZ0IsUUFBaEI7QUFDQUYsSUFBQUEsR0FBRyxDQUFDSixPQUFKLENBQVksT0FBWixFQUFxQlosTUFBckIsQ0FBNEJNLEdBQTVCLENBQWdDLENBQWhDO0FBQ0FVLElBQUFBLEdBQUcsQ0FBQ0csTUFBSixDQUFXbkIsTUFBWCxDQUFrQk8sRUFBbEIsQ0FBcUJDLEtBQXJCLENBQTJCLEdBQTNCO0FBSUFsQixJQUFBQSxNQUFNLENBQUNRLElBQVA7QUFDQSxVQUFNaEIsa0JBQUVDLEtBQUYsQ0FBUSxJQUFSLENBQU47QUFDQWlCLElBQUFBLE1BQU0sQ0FBQ0MsR0FBUCxDQUFXQyxLQUFYLENBQWlCWixNQUFNLENBQUNhLFNBQXhCO0FBQ0FiLElBQUFBLE1BQU0sQ0FBQ2UsV0FBUCxDQUFtQkwsTUFBbkIsQ0FBMEJNLEdBQTFCLENBQThCLENBQTlCO0FBQ0QsR0FsQ0MsQ0FBRjtBQW9DQVAsRUFBQUEsRUFBRSxDQUFDLDBFQUFELEVBQTZFLGtCQUFrQjtBQUMvRlQsSUFBQUEsTUFBTSxHQUFHLElBQUk1QixXQUFKLENBQWdCNkIsU0FBaEIsRUFBMkJOLGdCQUFFQyxJQUE3QixDQUFUO0FBQ0EsVUFBTUksTUFBTSxDQUFDYyxLQUFQLENBQWEsQ0FBYixFQUFnQkosTUFBaEIsQ0FBdUJvQixVQUF2QixDQUFrQ2IsRUFBbEMsQ0FBcUNjLFlBQXJDLENBQWtELFlBQWxELENBQU47QUFDRCxHQUhDLENBQUY7QUFLRCxDQWpFTyxDQUFSIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IF8gZnJvbSAnbG9kYXNoJztcbmltcG9ydCB7IG1qcGVnIH0gZnJvbSAnLi4vbGliJztcbmltcG9ydCBCIGZyb20gJ2JsdWViaXJkJztcbmltcG9ydCBodHRwIGZyb20gJ2h0dHAnO1xuaW1wb3J0IG1KcGVnU2VydmVyIGZyb20gJ21qcGVnLXNlcnZlcic7XG5pbXBvcnQgZ2V0UG9ydCBmcm9tICdnZXQtcG9ydCc7XG5cbmNvbnN0IHtNSnBlZ1N0cmVhbX0gPSBtanBlZztcblxuY29uc3QgVEVTVF9JTUdfSlBHID0gJy85ai80UUFZUlhocFpnQUFTVWtxQUFnQUFBQUFBQUFBQUFBQUFQL3NBQkZFZFdOcmVRQUJBQVFBQUFBZUFBRC80UU9CYUhSMGNEb3ZMMjV6TG1Ga2IySmxMbU52YlM5NFlYQXZNUzR3THdBOFAzaHdZV05yWlhRZ1ltVm5hVzQ5SXUrN3Z5SWdhV1E5SWxjMVRUQk5jRU5sYUdsSWVuSmxVM3BPVkdONmEyTTVaQ0kvUGlBOGVEcDRiWEJ0WlhSaElIaHRiRzV6T25nOUltRmtiMkpsT201ek9tMWxkR0V2SWlCNE9uaHRjSFJyUFNKQlpHOWlaU0JZVFZBZ1EyOXlaU0ExTGpZdFl6RTBNQ0EzT1M0eE5qQTBOVEVzSURJd01UY3ZNRFV2TURZdE1ERTZNRGc2TWpFZ0lDQWdJQ0FnSUNJK0lEeHlaR1k2VWtSR0lIaHRiRzV6T25Ka1pqMGlhSFIwY0RvdkwzZDNkeTUzTXk1dmNtY3ZNVGs1T1M4d01pOHlNaTF5WkdZdGMzbHVkR0Y0TFc1ekl5SStJRHh5WkdZNlJHVnpZM0pwY0hScGIyNGdjbVJtT21GaWIzVjBQU0lpSUhodGJHNXpPbmh0Y0UxTlBTSm9kSFJ3T2k4dmJuTXVZV1J2WW1VdVkyOXRMM2hoY0M4eExqQXZiVzB2SWlCNGJXeHVjenB6ZEZKbFpqMGlhSFIwY0RvdkwyNXpMbUZrYjJKbExtTnZiUzk0WVhBdk1TNHdMM05VZVhCbEwxSmxjMjkxY21ObFVtVm1JeUlnZUcxc2JuTTZlRzF3UFNKb2RIUndPaTh2Ym5NdVlXUnZZbVV1WTI5dEwzaGhjQzh4TGpBdklpQjRiWEJOVFRwUGNtbG5hVzVoYkVSdlkzVnRaVzUwU1VROUluaHRjQzVrYVdRNk5HWTVPRGMxT1RjdFpHRTJNeTAwWTJNMExUa3pORE10TkdZeU5qZ3pNR1V3TmprM0lpQjRiWEJOVFRwRWIyTjFiV1Z1ZEVsRVBTSjRiWEF1Wkdsa09qbERNekkzUWtZME4wUTNOVEV4UlRoQ01UbERPVFZETURjMlJERTVNRFk1SWlCNGJYQk5UVHBKYm5OMFlXNWpaVWxFUFNKNGJYQXVhV2xrT2psRE16STNRa1l6TjBRM05URXhSVGhDTVRsRE9UVkRNRGMyUkRFNU1EWTVJaUI0YlhBNlEzSmxZWFJ2Y2xSdmIydzlJa0ZrYjJKbElGQm9iM1J2YzJodmNDQkRReUF5TURFNElDaE5ZV05wYm5SdmMyZ3BJajRnUEhodGNFMU5Pa1JsY21sMlpXUkdjbTl0SUhOMFVtVm1PbWx1YzNSaGJtTmxTVVE5SW5odGNDNXBhV1E2TkdZNU9EYzFPVGN0WkdFMk15MDBZMk0wTFRrek5ETXROR1l5Tmpnek1HVXdOamszSWlCemRGSmxaanBrYjJOMWJXVnVkRWxFUFNKNGJYQXVaR2xrT2pSbU9UZzNOVGszTFdSaE5qTXROR05qTkMwNU16UXpMVFJtTWpZNE16QmxNRFk1TnlJdlBpQThMM0prWmpwRVpYTmpjbWx3ZEdsdmJqNGdQQzl5WkdZNlVrUkdQaUE4TDNnNmVHMXdiV1YwWVQ0Z1BEOTRjR0ZqYTJWMElHVnVaRDBpY2lJL1B2L3VBQTVCWkc5aVpRQmt3QUFBQUFILzJ3Q0VBQkFMQ3dzTUN4QU1EQkFYRHcwUEZ4c1VFQkFVR3g4WEZ4Y1hGeDhlRnhvYUdob1hIaDRqSlNjbEl4NHZMek16THk5QVFFQkFRRUJBUUVCQVFFQkFRRUFCRVE4UEVSTVJGUklTRlJRUkZCRVVHaFFXRmhRYUpob2FIQm9hSmpBakhoNGVIaU13S3k0bkp5Y3VLelUxTURBMU5VQkFQMEJBUUVCQVFFQkFRRUJBUVAvQUFCRUlBQ0FBSUFNQklnQUNFUUVERVFIL3hBQmdBQUVBQXdFQUFBQUFBQUFBQUFBQUFBQUFCQVVIQ0FFQkFBQUFBQUFBQUFBQUFBQUFBQUFBQUJBQUFRTUNBZ3NBQUFBQUFBQUFBQUFBQUFFQ0JCRURFZ1loTVJPRG83UFRWQVVXTmhFQkFBQUFBQUFBQUFBQUFBQUFBQUFBQVAvYUFBd0RBUUFDRVFNUkFEOEF6OEFBZEFBQUFBQUk4K2ZFOGRFdVRadHpaUjdWTWI2T2RURTVHSm9ZaXJyVXAvZThxZDl3YjNUR2UvbEoyNTUxc3g4RC85az0nO1xuXG5jb25zdCBNSlBFR19IT1NUID0gJzEyNy4wLjAuMSc7XG5cbi8qKlxuICogU3RhcnQgYW4gbWpwZWcgc2VydmVyIGZvciB0aGUgcHVycG9zZSBvZiB0ZXN0aW5nLCB3aGljaCBqdXN0IHNlbmRzIHRoZSBzYW1lXG4gKiBpbWFnZSBvdmVyIGFuZCBvdmVyLiBDYWxsZXIgaXMgcmVzcG9uc2libGUgZm9yIGNsb3NpbmcgdGhlIHNlcnZlci5cbiAqIEBwYXJhbSB7aW50fSBwb3J0IC0gcG9ydCB0aGUgc2VydmVyIHNob3VsZCBsaXN0ZW4gb25cbiAqIEBwYXJhbSB7aW50fSBbaW50TXNdIC0gaG93IG9mdGVuIHRoZSBzZXJ2ZXIgc2hvdWxkIHB1c2ggYW4gaW1hZ2VcbiAqIEBwYXJhbSB7aW50fSBbdGltZXNdIC0gaG93IG1hbnkgdGltZXMgdGhlIHNlcnZlciBzaG91bGQgcHVzaCBhbiBpbWFnZSBiZWZvcmVcbiAqIGl0IGNsb3NlcyB0aGUgY29ubmVjdGlvblxuICogQHJldHVybnMge2h0dHAuU2VydmVyfVxuICovXG5mdW5jdGlvbiBpbml0TUpwZWdTZXJ2ZXIgKHBvcnQsIGludE1zID0gMzAwLCB0aW1lcyA9IDIwKSB7XG4gIGNvbnN0IHNlcnZlciA9IGh0dHAuY3JlYXRlU2VydmVyKGFzeW5jIGZ1bmN0aW9uIChyZXEsIHJlcykge1xuICAgIGNvbnN0IG1KcGVnUmVxSGFuZGxlciA9IG1KcGVnU2VydmVyLmNyZWF0ZVJlcUhhbmRsZXIocmVxLCByZXMpO1xuICAgIGNvbnN0IGpwZyA9IEJ1ZmZlci5mcm9tKFRFU1RfSU1HX0pQRywgJ2Jhc2U2NCcpO1xuXG4gICAgLy8ganVzdCBzZW5kIHRoZSBzYW1lIGpwZWcgb3ZlciBhbmQgb3ZlclxuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgdGltZXM7IGkrKykge1xuICAgICAgYXdhaXQgQi5kZWxheShpbnRNcyk7XG4gICAgICBtSnBlZ1JlcUhhbmRsZXIuX3dyaXRlKGpwZywgbnVsbCwgXy5ub29wKTtcbiAgICB9XG4gICAgbUpwZWdSZXFIYW5kbGVyLmNsb3NlKCk7XG4gIH0pLmxpc3Rlbihwb3J0KTtcblxuICByZXR1cm4gc2VydmVyO1xufVxuXG5cbmRlc2NyaWJlKCdNSnBlZyBTdHJlYW0gKGUyZSknLCBmdW5jdGlvbiAoKSB7XG4gIGxldCBtSnBlZ1NlcnZlciwgc3RyZWFtO1xuICBsZXQgc2VydmVyVXJsLCBwb3J0O1xuXG4gIGJlZm9yZShhc3luYyBmdW5jdGlvbiAoKSB7XG4gICAgLy8gVE9ETzogcmVtb3ZlIHdoZW4gYnVmZmVydG9vbHMgY2FuIGhhbmRsZSB2MTJcbiAgICBpZiAocHJvY2Vzcy52ZXJzaW9uLnN0YXJ0c1dpdGgoJ3YxMicpKSB7XG4gICAgICByZXR1cm4gdGhpcy5za2lwKCk7XG4gICAgfVxuXG4gICAgcG9ydCA9IGF3YWl0IGdldFBvcnQoKTtcbiAgICBzZXJ2ZXJVcmwgPSBgaHR0cDovLyR7TUpQRUdfSE9TVH06JHtwb3J0fWA7XG4gICAgbUpwZWdTZXJ2ZXIgPSBhd2FpdCBpbml0TUpwZWdTZXJ2ZXIocG9ydCk7XG4gIH0pO1xuXG4gIGFmdGVyKGZ1bmN0aW9uICgpIHtcbiAgICBpZiAobUpwZWdTZXJ2ZXIpIHtcbiAgICAgIG1KcGVnU2VydmVyLmNsb3NlKCk7XG4gICAgfVxuICAgIGlmIChzdHJlYW0pIHtcbiAgICAgIHN0cmVhbS5zdG9wKCk7IC8vIGVuc3VyZSBzdHJlYW1zIGFyZSBhbHdheXMgc3RvcHBlZFxuICAgIH1cbiAgfSk7XG5cbiAgaXQoJ3Nob3VsZCB1cGRhdGUgbWpwZWcgc3RyZWFtIGJhc2VkIG9uIG5ldyBkYXRhIGZyb20gbWpwZWcgc2VydmVyJywgYXN5bmMgZnVuY3Rpb24gKCkge1xuICAgIHN0cmVhbSA9IG5ldyBNSnBlZ1N0cmVhbShzZXJ2ZXJVcmwsIF8ubm9vcCk7XG4gICAgc2hvdWxkLm5vdC5leGlzdChzdHJlYW0ubGFzdENodW5rKTtcbiAgICBhd2FpdCBzdHJlYW0uc3RhcnQoKTtcbiAgICBzaG91bGQuZXhpc3Qoc3RyZWFtLmxhc3RDaHVuayk7XG4gICAgc3RyZWFtLnVwZGF0ZUNvdW50LnNob3VsZC5lcWwoMSk7XG5cbiAgICBhd2FpdCBCLmRlbGF5KDEwMDApOyAvLyBsZXQgdGhlIHN0cmVhbSB1cGRhdGUgYSBiaXRcbiAgICBzdHJlYW0udXBkYXRlQ291bnQuc2hvdWxkLmJlLmFib3ZlKDEpO1xuXG4gICAgLy8gdmVyaWZ5IGpwZWcgdHlwZSBhbmQgYnl0ZSBsZW5ndGggb2YgZml4dHVyZSBpbWFnZVxuICAgIGNvbnN0IHN0YXJ0Qnl0ZXMgPSBCdWZmZXIuZnJvbShbMHhmZiwgMHhkOF0pO1xuICAgIGNvbnN0IGVuZEJ5dGVzID0gQnVmZmVyLmZyb20oWzB4ZmYsIDB4ZDldKTtcbiAgICBjb25zdCBzdGFydFBvcyA9IHN0cmVhbS5sYXN0Q2h1bmsuaW5kZXhPZihzdGFydEJ5dGVzKTtcbiAgICBjb25zdCBlbmRQb3MgPSBzdHJlYW0ubGFzdENodW5rLmluZGV4T2YoZW5kQnl0ZXMpO1xuICAgIHN0YXJ0UG9zLnNob3VsZC5lcWwoMCk7IC8vIHByb3ZlcyB3ZSBoYXZlIGEganBlZ1xuICAgIGVuZFBvcy5zaG91bGQuZXFsKDEyNzgpOyAvLyBwcm92ZXMgd2UgaGF2ZSBhIGpwZWcgb2YgdGhlIHJpZ2h0IHNpemVcblxuICAgIC8vIHZlcmlmeSB3ZSBjYW4gZ2V0IHRoZSBiYXNlNjQgdmVyc2lvbiB0b29cbiAgICBjb25zdCBiNjQgPSBzdHJlYW0ubGFzdENodW5rQmFzZTY0O1xuICAgIGI2NC5zaG91bGQuZXFsKFRFU1RfSU1HX0pQRyk7XG5cbiAgICAvLyB2ZXJpZnkgd2UgY2FuIGdldCB0aGUgUE5HIHZlcnNpb24gdG9vXG4gICAgY29uc3QgcG5nID0gYXdhaXQgc3RyZWFtLmxhc3RDaHVua1BOR0Jhc2U2NCgpO1xuICAgIHBuZy5zaG91bGQuYmUuYSgnc3RyaW5nJyk7XG4gICAgcG5nLmluZGV4T2YoJ2lWQk9SJykuc2hvdWxkLmVxbCgwKTtcbiAgICBwbmcubGVuZ3RoLnNob3VsZC5iZS5hYm92ZSg0MDApO1xuXG5cbiAgICAvLyBub3cgc3RvcCB0aGUgc3RyZWFtIGFuZCB3YWl0IHNvbWUgbW9yZSB0aGVuIGFzc2VydCBubyBuZXcgZGF0YSBoYXMgY29tZSBpblxuICAgIHN0cmVhbS5zdG9wKCk7XG4gICAgYXdhaXQgQi5kZWxheSgxMDAwKTtcbiAgICBzaG91bGQubm90LmV4aXN0KHN0cmVhbS5sYXN0Q2h1bmspO1xuICAgIHN0cmVhbS51cGRhdGVDb3VudC5zaG91bGQuZXFsKDApO1xuICB9KTtcblxuICBpdCgnc2hvdWxkIGVycm9yIG91dCBpZiB0aGUgc2VydmVyIGRvZXMgbm90IHNlbmQgYW55IGltYWdlcyBiZWZvcmUgYSB0aW1lb3V0JywgYXN5bmMgZnVuY3Rpb24gKCkge1xuICAgIHN0cmVhbSA9IG5ldyBNSnBlZ1N0cmVhbShzZXJ2ZXJVcmwsIF8ubm9vcCk7XG4gICAgYXdhaXQgc3RyZWFtLnN0YXJ0KDApLnNob3VsZC5ldmVudHVhbGx5LmJlLnJlamVjdGVkV2l0aCgvbmV2ZXIgc2VudC8pO1xuICB9KTtcblxufSk7XG4iXSwiZmlsZSI6InRlc3QvbWpwZWctZTJlLXNwZWNzLmpzIiwic291cmNlUm9vdCI6Ii4uLy4uIn0=
|
|
@@ -1,32 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
|
|
5
|
-
require("source-map-support/register");
|
|
6
|
-
|
|
7
|
-
var _path = _interopRequireDefault(require("path"));
|
|
8
|
-
|
|
9
|
-
var _net = require("../lib/net");
|
|
10
|
-
|
|
11
|
-
var _index = require("../lib/index");
|
|
12
|
-
|
|
13
|
-
describe('#net', function () {
|
|
14
|
-
let tmpRoot;
|
|
15
|
-
beforeEach(async function () {
|
|
16
|
-
tmpRoot = await _index.tempDir.openDir();
|
|
17
|
-
});
|
|
18
|
-
afterEach(async function () {
|
|
19
|
-
await _index.fs.rimraf(tmpRoot);
|
|
20
|
-
});
|
|
21
|
-
describe('downloadFile()', function () {
|
|
22
|
-
it('should download file into the target folder', async function () {
|
|
23
|
-
const dstPath = _path.default.join(tmpRoot, 'download.tmp');
|
|
24
|
-
|
|
25
|
-
await (0, _net.downloadFile)('https://appium.io/ico/apple-touch-icon-114x114-precomposed.png', dstPath);
|
|
26
|
-
await _index.fs.exists(dstPath).should.eventually.be.true;
|
|
27
|
-
});
|
|
28
|
-
});
|
|
29
|
-
});require('source-map-support').install();
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInRlc3QvbmV0LWUyZS1zcGVjcy5qcyJdLCJuYW1lcyI6WyJkZXNjcmliZSIsInRtcFJvb3QiLCJiZWZvcmVFYWNoIiwidGVtcERpciIsIm9wZW5EaXIiLCJhZnRlckVhY2giLCJmcyIsInJpbXJhZiIsIml0IiwiZHN0UGF0aCIsInBhdGgiLCJqb2luIiwiZXhpc3RzIiwic2hvdWxkIiwiZXZlbnR1YWxseSIsImJlIiwidHJ1ZSJdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUE7O0FBQ0E7O0FBQ0E7O0FBR0FBLFFBQVEsQ0FBQyxNQUFELEVBQVMsWUFBWTtBQUMzQixNQUFJQyxPQUFKO0FBRUFDLEVBQUFBLFVBQVUsQ0FBQyxrQkFBa0I7QUFDM0JELElBQUFBLE9BQU8sR0FBRyxNQUFNRSxlQUFRQyxPQUFSLEVBQWhCO0FBQ0QsR0FGUyxDQUFWO0FBSUFDLEVBQUFBLFNBQVMsQ0FBQyxrQkFBa0I7QUFDMUIsVUFBTUMsVUFBR0MsTUFBSCxDQUFVTixPQUFWLENBQU47QUFDRCxHQUZRLENBQVQ7QUFJQUQsRUFBQUEsUUFBUSxDQUFDLGdCQUFELEVBQW1CLFlBQVk7QUFDckNRLElBQUFBLEVBQUUsQ0FBQyw2Q0FBRCxFQUFnRCxrQkFBa0I7QUFDbEUsWUFBTUMsT0FBTyxHQUFHQyxjQUFLQyxJQUFMLENBQVVWLE9BQVYsRUFBbUIsY0FBbkIsQ0FBaEI7O0FBQ0EsWUFBTSx1QkFBYSxnRUFBYixFQUNKUSxPQURJLENBQU47QUFFQSxZQUFNSCxVQUFHTSxNQUFILENBQVVILE9BQVYsRUFBbUJJLE1BQW5CLENBQTBCQyxVQUExQixDQUFxQ0MsRUFBckMsQ0FBd0NDLElBQTlDO0FBQ0QsS0FMQyxDQUFGO0FBTUQsR0FQTyxDQUFSO0FBU0QsQ0FwQk8sQ0FBUiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBwYXRoIGZyb20gJ3BhdGgnO1xuaW1wb3J0IHsgZG93bmxvYWRGaWxlIH0gZnJvbSAnLi4vbGliL25ldCc7XG5pbXBvcnQgeyB0ZW1wRGlyLCBmcyB9IGZyb20gJy4uL2xpYi9pbmRleCc7XG5cblxuZGVzY3JpYmUoJyNuZXQnLCBmdW5jdGlvbiAoKSB7XG4gIGxldCB0bXBSb290O1xuXG4gIGJlZm9yZUVhY2goYXN5bmMgZnVuY3Rpb24gKCkge1xuICAgIHRtcFJvb3QgPSBhd2FpdCB0ZW1wRGlyLm9wZW5EaXIoKTtcbiAgfSk7XG5cbiAgYWZ0ZXJFYWNoKGFzeW5jIGZ1bmN0aW9uICgpIHtcbiAgICBhd2FpdCBmcy5yaW1yYWYodG1wUm9vdCk7XG4gIH0pO1xuXG4gIGRlc2NyaWJlKCdkb3dubG9hZEZpbGUoKScsIGZ1bmN0aW9uICgpIHtcbiAgICBpdCgnc2hvdWxkIGRvd25sb2FkIGZpbGUgaW50byB0aGUgdGFyZ2V0IGZvbGRlcicsIGFzeW5jIGZ1bmN0aW9uICgpIHtcbiAgICAgIGNvbnN0IGRzdFBhdGggPSBwYXRoLmpvaW4odG1wUm9vdCwgJ2Rvd25sb2FkLnRtcCcpO1xuICAgICAgYXdhaXQgZG93bmxvYWRGaWxlKCdodHRwczovL2FwcGl1bS5pby9pY28vYXBwbGUtdG91Y2gtaWNvbi0xMTR4MTE0LXByZWNvbXBvc2VkLnBuZycsXG4gICAgICAgIGRzdFBhdGgpO1xuICAgICAgYXdhaXQgZnMuZXhpc3RzKGRzdFBhdGgpLnNob3VsZC5ldmVudHVhbGx5LmJlLnRydWU7XG4gICAgfSk7XG4gIH0pO1xuXG59KTtcbiJdLCJmaWxlIjoidGVzdC9uZXQtZTJlLXNwZWNzLmpzIiwic291cmNlUm9vdCI6Ii4uLy4uIn0=
|
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
require("source-map-support/register");
|
|
4
|
-
|
|
5
|
-
var _lib = require("../lib");
|
|
6
|
-
|
|
7
|
-
describe('node utilities', function () {
|
|
8
|
-
describe('requirePackage', function () {
|
|
9
|
-
it('should be able to require a local package', async function () {
|
|
10
|
-
await _lib.node.requirePackage('chai').should.not.be.rejected;
|
|
11
|
-
});
|
|
12
|
-
it.skip('should be able to require a global package', async function () {
|
|
13
|
-
await _lib.node.requirePackage('npm').should.not.be.rejected;
|
|
14
|
-
});
|
|
15
|
-
it('should fail to find uninstalled package', async function () {
|
|
16
|
-
await _lib.node.requirePackage('appium-foo-driver').should.eventually.be.rejectedWith(/Unable to load package/);
|
|
17
|
-
});
|
|
18
|
-
});
|
|
19
|
-
});require('source-map-support').install();
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInRlc3Qvbm9kZS1lMmUtc3BlY3MuanMiXSwibmFtZXMiOlsiZGVzY3JpYmUiLCJpdCIsIm5vZGUiLCJyZXF1aXJlUGFja2FnZSIsInNob3VsZCIsIm5vdCIsImJlIiwicmVqZWN0ZWQiLCJza2lwIiwiZXZlbnR1YWxseSIsInJlamVjdGVkV2l0aCJdLCJtYXBwaW5ncyI6Ijs7OztBQUFBOztBQUlBQSxRQUFRLENBQUMsZ0JBQUQsRUFBbUIsWUFBWTtBQUNyQ0EsRUFBQUEsUUFBUSxDQUFDLGdCQUFELEVBQW1CLFlBQVk7QUFDckNDLElBQUFBLEVBQUUsQ0FBQywyQ0FBRCxFQUE4QyxrQkFBa0I7QUFDaEUsWUFBTUMsVUFBS0MsY0FBTCxDQUFvQixNQUFwQixFQUE0QkMsTUFBNUIsQ0FBbUNDLEdBQW5DLENBQXVDQyxFQUF2QyxDQUEwQ0MsUUFBaEQ7QUFDRCxLQUZDLENBQUY7QUFJQU4sSUFBQUEsRUFBRSxDQUFDTyxJQUFILENBQVEsNENBQVIsRUFBc0Qsa0JBQWtCO0FBQ3RFLFlBQU1OLFVBQUtDLGNBQUwsQ0FBb0IsS0FBcEIsRUFBMkJDLE1BQTNCLENBQWtDQyxHQUFsQyxDQUFzQ0MsRUFBdEMsQ0FBeUNDLFFBQS9DO0FBQ0QsS0FGRDtBQUdBTixJQUFBQSxFQUFFLENBQUMseUNBQUQsRUFBNEMsa0JBQWtCO0FBQzlELFlBQU1DLFVBQUtDLGNBQUwsQ0FBb0IsbUJBQXBCLEVBQXlDQyxNQUF6QyxDQUFnREssVUFBaEQsQ0FBMkRILEVBQTNELENBQThESSxZQUE5RCxDQUEyRSx3QkFBM0UsQ0FBTjtBQUNELEtBRkMsQ0FBRjtBQUdELEdBWE8sQ0FBUjtBQVlELENBYk8sQ0FBUiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IG5vZGUgfSBmcm9tICcuLi9saWInO1xuXG5cblxuZGVzY3JpYmUoJ25vZGUgdXRpbGl0aWVzJywgZnVuY3Rpb24gKCkge1xuICBkZXNjcmliZSgncmVxdWlyZVBhY2thZ2UnLCBmdW5jdGlvbiAoKSB7XG4gICAgaXQoJ3Nob3VsZCBiZSBhYmxlIHRvIHJlcXVpcmUgYSBsb2NhbCBwYWNrYWdlJywgYXN5bmMgZnVuY3Rpb24gKCkge1xuICAgICAgYXdhaXQgbm9kZS5yZXF1aXJlUGFja2FnZSgnY2hhaScpLnNob3VsZC5ub3QuYmUucmVqZWN0ZWQ7XG4gICAgfSk7XG4gICAgLy8gWFhYOiBzZWUgIzE1OTUxXG4gICAgaXQuc2tpcCgnc2hvdWxkIGJlIGFibGUgdG8gcmVxdWlyZSBhIGdsb2JhbCBwYWNrYWdlJywgYXN5bmMgZnVuY3Rpb24gKCkge1xuICAgICAgYXdhaXQgbm9kZS5yZXF1aXJlUGFja2FnZSgnbnBtJykuc2hvdWxkLm5vdC5iZS5yZWplY3RlZDtcbiAgICB9KTtcbiAgICBpdCgnc2hvdWxkIGZhaWwgdG8gZmluZCB1bmluc3RhbGxlZCBwYWNrYWdlJywgYXN5bmMgZnVuY3Rpb24gKCkge1xuICAgICAgYXdhaXQgbm9kZS5yZXF1aXJlUGFja2FnZSgnYXBwaXVtLWZvby1kcml2ZXInKS5zaG91bGQuZXZlbnR1YWxseS5iZS5yZWplY3RlZFdpdGgoL1VuYWJsZSB0byBsb2FkIHBhY2thZ2UvKTtcbiAgICB9KTtcbiAgfSk7XG59KTtcbiJdLCJmaWxlIjoidGVzdC9ub2RlLWUyZS1zcGVjcy5qcyIsInNvdXJjZVJvb3QiOiIuLi8uLiJ9
|
|
@@ -1,54 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
|
|
5
|
-
require("source-map-support/register");
|
|
6
|
-
|
|
7
|
-
var _path = _interopRequireDefault(require("path"));
|
|
8
|
-
|
|
9
|
-
var _index = require("../lib/index.js");
|
|
10
|
-
|
|
11
|
-
const binaryPlistPath = _path.default.join(__dirname, 'assets', 'sample_binary.plist');
|
|
12
|
-
|
|
13
|
-
const textPlistPath = _path.default.join(__dirname, 'assets', 'sample_text.plist');
|
|
14
|
-
|
|
15
|
-
describe('plist', function () {
|
|
16
|
-
it('should parse plist file as binary', async function () {
|
|
17
|
-
let content = await _index.plist.parsePlistFile(binaryPlistPath);
|
|
18
|
-
content.should.have.property('com.apple.locationd.bundle-/System/Library/PrivateFrameworks/Parsec.framework');
|
|
19
|
-
});
|
|
20
|
-
it(`should return an empty object if file doesn't exist and mustExist is set to false`, async function () {
|
|
21
|
-
let mustExist = false;
|
|
22
|
-
let content = await _index.plist.parsePlistFile('doesntExist.plist', mustExist);
|
|
23
|
-
content.should.be.an('object');
|
|
24
|
-
content.should.be.empty;
|
|
25
|
-
});
|
|
26
|
-
it('should write plist file as binary', async function () {
|
|
27
|
-
let plistFile = _path.default.resolve(await _index.tempDir.openDir(), 'sample.plist');
|
|
28
|
-
|
|
29
|
-
await _index.fs.copyFile(binaryPlistPath, plistFile);
|
|
30
|
-
let updatedFields = {
|
|
31
|
-
'io.appium.test': true
|
|
32
|
-
};
|
|
33
|
-
await _index.plist.updatePlistFile(plistFile, updatedFields, true);
|
|
34
|
-
let content = await _index.plist.parsePlistFile(plistFile);
|
|
35
|
-
content.should.have.property('io.appium.test');
|
|
36
|
-
});
|
|
37
|
-
it('should read binary plist', async function () {
|
|
38
|
-
const content = await _index.fs.readFile(binaryPlistPath);
|
|
39
|
-
|
|
40
|
-
const object = _index.plist.parsePlist(content);
|
|
41
|
-
|
|
42
|
-
object.should.have.property('com.apple.locationd.bundle-/System/Library/PrivateFrameworks/Parsec.framework');
|
|
43
|
-
});
|
|
44
|
-
it('should read text plist', async function () {
|
|
45
|
-
const content = await _index.fs.readFile(textPlistPath);
|
|
46
|
-
|
|
47
|
-
const object = _index.plist.parsePlist(content);
|
|
48
|
-
|
|
49
|
-
object.should.have.property('com.apple.locationd.bundle-/System/Library/PrivateFrameworks/Parsec.framework');
|
|
50
|
-
});
|
|
51
|
-
});require('source-map-support').install();
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInRlc3QvcGxpc3Qtc3BlY3MuanMiXSwibmFtZXMiOlsiYmluYXJ5UGxpc3RQYXRoIiwicGF0aCIsImpvaW4iLCJfX2Rpcm5hbWUiLCJ0ZXh0UGxpc3RQYXRoIiwiZGVzY3JpYmUiLCJpdCIsImNvbnRlbnQiLCJwbGlzdCIsInBhcnNlUGxpc3RGaWxlIiwic2hvdWxkIiwiaGF2ZSIsInByb3BlcnR5IiwibXVzdEV4aXN0IiwiYmUiLCJhbiIsImVtcHR5IiwicGxpc3RGaWxlIiwicmVzb2x2ZSIsInRlbXBEaXIiLCJvcGVuRGlyIiwiZnMiLCJjb3B5RmlsZSIsInVwZGF0ZWRGaWVsZHMiLCJ1cGRhdGVQbGlzdEZpbGUiLCJyZWFkRmlsZSIsIm9iamVjdCIsInBhcnNlUGxpc3QiXSwibWFwcGluZ3MiOiI7Ozs7OztBQUFBOztBQUNBOztBQUlBLE1BQU1BLGVBQWUsR0FBR0MsY0FBS0MsSUFBTCxDQUFVQyxTQUFWLEVBQXFCLFFBQXJCLEVBQStCLHFCQUEvQixDQUF4Qjs7QUFDQSxNQUFNQyxhQUFhLEdBQUdILGNBQUtDLElBQUwsQ0FBVUMsU0FBVixFQUFxQixRQUFyQixFQUErQixtQkFBL0IsQ0FBdEI7O0FBRUFFLFFBQVEsQ0FBQyxPQUFELEVBQVUsWUFBWTtBQUM1QkMsRUFBQUEsRUFBRSxDQUFDLG1DQUFELEVBQXNDLGtCQUFrQjtBQUN4RCxRQUFJQyxPQUFPLEdBQUcsTUFBTUMsYUFBTUMsY0FBTixDQUFxQlQsZUFBckIsQ0FBcEI7QUFDQU8sSUFBQUEsT0FBTyxDQUFDRyxNQUFSLENBQWVDLElBQWYsQ0FBb0JDLFFBQXBCLENBQTZCLCtFQUE3QjtBQUNELEdBSEMsQ0FBRjtBQUtBTixFQUFBQSxFQUFFLENBQUUsbUZBQUYsRUFBc0Ysa0JBQWtCO0FBQ3hHLFFBQUlPLFNBQVMsR0FBRyxLQUFoQjtBQUNBLFFBQUlOLE9BQU8sR0FBRyxNQUFNQyxhQUFNQyxjQUFOLENBQXFCLG1CQUFyQixFQUEwQ0ksU0FBMUMsQ0FBcEI7QUFDQU4sSUFBQUEsT0FBTyxDQUFDRyxNQUFSLENBQWVJLEVBQWYsQ0FBa0JDLEVBQWxCLENBQXFCLFFBQXJCO0FBQ0FSLElBQUFBLE9BQU8sQ0FBQ0csTUFBUixDQUFlSSxFQUFmLENBQWtCRSxLQUFsQjtBQUNELEdBTEMsQ0FBRjtBQU9BVixFQUFBQSxFQUFFLENBQUMsbUNBQUQsRUFBc0Msa0JBQWtCO0FBRXhELFFBQUlXLFNBQVMsR0FBR2hCLGNBQUtpQixPQUFMLENBQWEsTUFBTUMsZUFBUUMsT0FBUixFQUFuQixFQUFzQyxjQUF0QyxDQUFoQjs7QUFDQSxVQUFNQyxVQUFHQyxRQUFILENBQVl0QixlQUFaLEVBQTZCaUIsU0FBN0IsQ0FBTjtBQUdBLFFBQUlNLGFBQWEsR0FBRztBQUNsQix3QkFBa0I7QUFEQSxLQUFwQjtBQUdBLFVBQU1mLGFBQU1nQixlQUFOLENBQXNCUCxTQUF0QixFQUFpQ00sYUFBakMsRUFBZ0QsSUFBaEQsQ0FBTjtBQUdBLFFBQUloQixPQUFPLEdBQUcsTUFBTUMsYUFBTUMsY0FBTixDQUFxQlEsU0FBckIsQ0FBcEI7QUFDQVYsSUFBQUEsT0FBTyxDQUFDRyxNQUFSLENBQWVDLElBQWYsQ0FBb0JDLFFBQXBCLENBQTZCLGdCQUE3QjtBQUNELEdBZEMsQ0FBRjtBQWdCQU4sRUFBQUEsRUFBRSxDQUFDLDBCQUFELEVBQTZCLGtCQUFrQjtBQUMvQyxVQUFNQyxPQUFPLEdBQUcsTUFBTWMsVUFBR0ksUUFBSCxDQUFZekIsZUFBWixDQUF0Qjs7QUFDQSxVQUFNMEIsTUFBTSxHQUFHbEIsYUFBTW1CLFVBQU4sQ0FBaUJwQixPQUFqQixDQUFmOztBQUNBbUIsSUFBQUEsTUFBTSxDQUFDaEIsTUFBUCxDQUFjQyxJQUFkLENBQW1CQyxRQUFuQixDQUE0QiwrRUFBNUI7QUFDRCxHQUpDLENBQUY7QUFNQU4sRUFBQUEsRUFBRSxDQUFDLHdCQUFELEVBQTJCLGtCQUFrQjtBQUM3QyxVQUFNQyxPQUFPLEdBQUcsTUFBTWMsVUFBR0ksUUFBSCxDQUFZckIsYUFBWixDQUF0Qjs7QUFDQSxVQUFNc0IsTUFBTSxHQUFHbEIsYUFBTW1CLFVBQU4sQ0FBaUJwQixPQUFqQixDQUFmOztBQUNBbUIsSUFBQUEsTUFBTSxDQUFDaEIsTUFBUCxDQUFjQyxJQUFkLENBQW1CQyxRQUFuQixDQUE0QiwrRUFBNUI7QUFDRCxHQUpDLENBQUY7QUFLRCxDQXhDTyxDQUFSIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHBhdGggZnJvbSAncGF0aCc7XG5pbXBvcnQgeyBwbGlzdCwgdGVtcERpciwgZnMgfSBmcm9tICcuLi9saWIvaW5kZXguanMnO1xuXG5cblxuY29uc3QgYmluYXJ5UGxpc3RQYXRoID0gcGF0aC5qb2luKF9fZGlybmFtZSwgJ2Fzc2V0cycsICdzYW1wbGVfYmluYXJ5LnBsaXN0Jyk7XG5jb25zdCB0ZXh0UGxpc3RQYXRoID0gcGF0aC5qb2luKF9fZGlybmFtZSwgJ2Fzc2V0cycsICdzYW1wbGVfdGV4dC5wbGlzdCcpO1xuXG5kZXNjcmliZSgncGxpc3QnLCBmdW5jdGlvbiAoKSB7XG4gIGl0KCdzaG91bGQgcGFyc2UgcGxpc3QgZmlsZSBhcyBiaW5hcnknLCBhc3luYyBmdW5jdGlvbiAoKSB7XG4gICAgbGV0IGNvbnRlbnQgPSBhd2FpdCBwbGlzdC5wYXJzZVBsaXN0RmlsZShiaW5hcnlQbGlzdFBhdGgpO1xuICAgIGNvbnRlbnQuc2hvdWxkLmhhdmUucHJvcGVydHkoJ2NvbS5hcHBsZS5sb2NhdGlvbmQuYnVuZGxlLS9TeXN0ZW0vTGlicmFyeS9Qcml2YXRlRnJhbWV3b3Jrcy9QYXJzZWMuZnJhbWV3b3JrJyk7XG4gIH0pO1xuXG4gIGl0KGBzaG91bGQgcmV0dXJuIGFuIGVtcHR5IG9iamVjdCBpZiBmaWxlIGRvZXNuJ3QgZXhpc3QgYW5kIG11c3RFeGlzdCBpcyBzZXQgdG8gZmFsc2VgLCBhc3luYyBmdW5jdGlvbiAoKSB7XG4gICAgbGV0IG11c3RFeGlzdCA9IGZhbHNlO1xuICAgIGxldCBjb250ZW50ID0gYXdhaXQgcGxpc3QucGFyc2VQbGlzdEZpbGUoJ2RvZXNudEV4aXN0LnBsaXN0JywgbXVzdEV4aXN0KTtcbiAgICBjb250ZW50LnNob3VsZC5iZS5hbignb2JqZWN0Jyk7XG4gICAgY29udGVudC5zaG91bGQuYmUuZW1wdHk7XG4gIH0pO1xuXG4gIGl0KCdzaG91bGQgd3JpdGUgcGxpc3QgZmlsZSBhcyBiaW5hcnknLCBhc3luYyBmdW5jdGlvbiAoKSB7XG4gICAgLy8gY3JlYXRlIGEgdGVtcG9yYXJ5IGZpbGUsIHRvIHdoaWNoIHdlIHdpbGwgd3JpdGVcbiAgICBsZXQgcGxpc3RGaWxlID0gcGF0aC5yZXNvbHZlKGF3YWl0IHRlbXBEaXIub3BlbkRpcigpLCAnc2FtcGxlLnBsaXN0Jyk7XG4gICAgYXdhaXQgZnMuY29weUZpbGUoYmluYXJ5UGxpc3RQYXRoLCBwbGlzdEZpbGUpO1xuXG4gICAgLy8gd3JpdGUgc29tZSBkYXRhXG4gICAgbGV0IHVwZGF0ZWRGaWVsZHMgPSB7XG4gICAgICAnaW8uYXBwaXVtLnRlc3QnOiB0cnVlXG4gICAgfTtcbiAgICBhd2FpdCBwbGlzdC51cGRhdGVQbGlzdEZpbGUocGxpc3RGaWxlLCB1cGRhdGVkRmllbGRzLCB0cnVlKTtcblxuICAgIC8vIG1ha2Ugc3VyZSB0aGUgZGF0YSBpcyB0aGVyZVxuICAgIGxldCBjb250ZW50ID0gYXdhaXQgcGxpc3QucGFyc2VQbGlzdEZpbGUocGxpc3RGaWxlKTtcbiAgICBjb250ZW50LnNob3VsZC5oYXZlLnByb3BlcnR5KCdpby5hcHBpdW0udGVzdCcpO1xuICB9KTtcblxuICBpdCgnc2hvdWxkIHJlYWQgYmluYXJ5IHBsaXN0JywgYXN5bmMgZnVuY3Rpb24gKCkge1xuICAgIGNvbnN0IGNvbnRlbnQgPSBhd2FpdCBmcy5yZWFkRmlsZShiaW5hcnlQbGlzdFBhdGgpO1xuICAgIGNvbnN0IG9iamVjdCA9IHBsaXN0LnBhcnNlUGxpc3QoY29udGVudCk7XG4gICAgb2JqZWN0LnNob3VsZC5oYXZlLnByb3BlcnR5KCdjb20uYXBwbGUubG9jYXRpb25kLmJ1bmRsZS0vU3lzdGVtL0xpYnJhcnkvUHJpdmF0ZUZyYW1ld29ya3MvUGFyc2VjLmZyYW1ld29yaycpO1xuICB9KTtcblxuICBpdCgnc2hvdWxkIHJlYWQgdGV4dCBwbGlzdCcsIGFzeW5jIGZ1bmN0aW9uICgpIHtcbiAgICBjb25zdCBjb250ZW50ID0gYXdhaXQgZnMucmVhZEZpbGUodGV4dFBsaXN0UGF0aCk7XG4gICAgY29uc3Qgb2JqZWN0ID0gcGxpc3QucGFyc2VQbGlzdChjb250ZW50KTtcbiAgICBvYmplY3Quc2hvdWxkLmhhdmUucHJvcGVydHkoJ2NvbS5hcHBsZS5sb2NhdGlvbmQuYnVuZGxlLS9TeXN0ZW0vTGlicmFyeS9Qcml2YXRlRnJhbWV3b3Jrcy9QYXJzZWMuZnJhbWV3b3JrJyk7XG4gIH0pO1xufSk7XG4iXSwiZmlsZSI6InRlc3QvcGxpc3Qtc3BlY3MuanMiLCJzb3VyY2VSb290IjoiLi4vLi4ifQ==
|
|
@@ -1,104 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
|
|
5
|
-
require("source-map-support/register");
|
|
6
|
-
|
|
7
|
-
var teenProcess = _interopRequireWildcard(require("teen_process"));
|
|
8
|
-
|
|
9
|
-
var _sinon = _interopRequireDefault(require("sinon"));
|
|
10
|
-
|
|
11
|
-
var _index = require("../lib/index.js");
|
|
12
|
-
|
|
13
|
-
var _asyncbox = require("asyncbox");
|
|
14
|
-
|
|
15
|
-
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
16
|
-
|
|
17
|
-
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
18
|
-
|
|
19
|
-
const SubProcess = teenProcess.SubProcess;
|
|
20
|
-
describe('process', function () {
|
|
21
|
-
describe('getProcessIds', function () {
|
|
22
|
-
let proc;
|
|
23
|
-
before(async function () {
|
|
24
|
-
proc = new SubProcess('tail', ['-f', __filename]);
|
|
25
|
-
await proc.start();
|
|
26
|
-
});
|
|
27
|
-
after(async function () {
|
|
28
|
-
await proc.stop();
|
|
29
|
-
});
|
|
30
|
-
it('should get return an array for existing process', async function () {
|
|
31
|
-
let pids = await _index.process.getProcessIds('tail');
|
|
32
|
-
pids.should.be.an.instanceof(Array);
|
|
33
|
-
});
|
|
34
|
-
it('should get process identifiers for existing process', async function () {
|
|
35
|
-
let pids = await _index.process.getProcessIds('tail');
|
|
36
|
-
pids.should.have.length.at.least(1);
|
|
37
|
-
});
|
|
38
|
-
it('should get an empty array when the process does not exist', async function () {
|
|
39
|
-
let pids = await _index.process.getProcessIds('sadfgasdfasdf');
|
|
40
|
-
pids.should.have.length(0);
|
|
41
|
-
});
|
|
42
|
-
it('should throw an error if pgrep fails', async function () {
|
|
43
|
-
let tpMock = _sinon.default.mock(teenProcess);
|
|
44
|
-
|
|
45
|
-
tpMock.expects('exec').throws({
|
|
46
|
-
message: 'Oops',
|
|
47
|
-
code: 2
|
|
48
|
-
});
|
|
49
|
-
await _index.process.getProcessIds('tail').should.eventually.be.rejectedWith(/Oops/);
|
|
50
|
-
tpMock.restore();
|
|
51
|
-
});
|
|
52
|
-
});
|
|
53
|
-
describe('killProcess', function () {
|
|
54
|
-
let proc;
|
|
55
|
-
beforeEach(async function () {
|
|
56
|
-
proc = new SubProcess('tail', ['-f', __filename]);
|
|
57
|
-
await proc.start();
|
|
58
|
-
});
|
|
59
|
-
afterEach(async function () {
|
|
60
|
-
if (proc.isRunning) {
|
|
61
|
-
await proc.stop();
|
|
62
|
-
}
|
|
63
|
-
});
|
|
64
|
-
it('should kill process that is running', async function () {
|
|
65
|
-
proc.isRunning.should.be.true;
|
|
66
|
-
await _index.process.killProcess('tail');
|
|
67
|
-
await (0, _asyncbox.retryInterval)(10, 100, async () => {
|
|
68
|
-
proc.isRunning.should.be.false;
|
|
69
|
-
});
|
|
70
|
-
});
|
|
71
|
-
it('should do nothing if the process does not exist', async function () {
|
|
72
|
-
proc.isRunning.should.be.true;
|
|
73
|
-
await _index.process.killProcess('asdfasdfasdf');
|
|
74
|
-
await (0, _asyncbox.retryInterval)(10, 100, async () => {
|
|
75
|
-
proc.isRunning.should.be.false;
|
|
76
|
-
}).should.eventually.be.rejected;
|
|
77
|
-
});
|
|
78
|
-
it('should throw an error if pgrep fails', async function () {
|
|
79
|
-
let tpMock = _sinon.default.mock(teenProcess);
|
|
80
|
-
|
|
81
|
-
tpMock.expects('exec').throws({
|
|
82
|
-
message: 'Oops',
|
|
83
|
-
code: 2
|
|
84
|
-
});
|
|
85
|
-
await _index.process.killProcess('tail').should.eventually.be.rejectedWith(/Oops/);
|
|
86
|
-
tpMock.restore();
|
|
87
|
-
});
|
|
88
|
-
it('should throw an error if pkill fails', async function () {
|
|
89
|
-
let tpMock = _sinon.default.mock(teenProcess);
|
|
90
|
-
|
|
91
|
-
tpMock.expects('exec').twice().onFirstCall().returns({
|
|
92
|
-
stdout: '42\n'
|
|
93
|
-
}).onSecondCall().throws({
|
|
94
|
-
message: 'Oops',
|
|
95
|
-
code: 2
|
|
96
|
-
});
|
|
97
|
-
await _index.process.killProcess('tail').should.eventually.be.rejectedWith(/Oops/);
|
|
98
|
-
tpMock.restore();
|
|
99
|
-
});
|
|
100
|
-
});
|
|
101
|
-
});require('source-map-support').install();
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInRlc3QvcHJvY2Vzcy1zcGVjcy5qcyJdLCJuYW1lcyI6WyJTdWJQcm9jZXNzIiwidGVlblByb2Nlc3MiLCJkZXNjcmliZSIsInByb2MiLCJiZWZvcmUiLCJfX2ZpbGVuYW1lIiwic3RhcnQiLCJhZnRlciIsInN0b3AiLCJpdCIsInBpZHMiLCJwcm9jZXNzIiwiZ2V0UHJvY2Vzc0lkcyIsInNob3VsZCIsImJlIiwiYW4iLCJpbnN0YW5jZW9mIiwiQXJyYXkiLCJoYXZlIiwibGVuZ3RoIiwiYXQiLCJsZWFzdCIsInRwTW9jayIsInNpbm9uIiwibW9jayIsImV4cGVjdHMiLCJ0aHJvd3MiLCJtZXNzYWdlIiwiY29kZSIsImV2ZW50dWFsbHkiLCJyZWplY3RlZFdpdGgiLCJyZXN0b3JlIiwiYmVmb3JlRWFjaCIsImFmdGVyRWFjaCIsImlzUnVubmluZyIsInRydWUiLCJraWxsUHJvY2VzcyIsImZhbHNlIiwicmVqZWN0ZWQiLCJ0d2ljZSIsIm9uRmlyc3RDYWxsIiwicmV0dXJucyIsInN0ZG91dCIsIm9uU2Vjb25kQ2FsbCJdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUE7O0FBQ0E7O0FBQ0E7O0FBQ0E7Ozs7OztBQUlBLE1BQU1BLFVBQVUsR0FBR0MsV0FBVyxDQUFDRCxVQUEvQjtBQUVBRSxRQUFRLENBQUMsU0FBRCxFQUFZLFlBQVk7QUFDOUJBLEVBQUFBLFFBQVEsQ0FBQyxlQUFELEVBQWtCLFlBQVk7QUFDcEMsUUFBSUMsSUFBSjtBQUNBQyxJQUFBQSxNQUFNLENBQUMsa0JBQWtCO0FBQ3ZCRCxNQUFBQSxJQUFJLEdBQUcsSUFBSUgsVUFBSixDQUFlLE1BQWYsRUFBdUIsQ0FBQyxJQUFELEVBQU9LLFVBQVAsQ0FBdkIsQ0FBUDtBQUNBLFlBQU1GLElBQUksQ0FBQ0csS0FBTCxFQUFOO0FBQ0QsS0FISyxDQUFOO0FBSUFDLElBQUFBLEtBQUssQ0FBQyxrQkFBa0I7QUFDdEIsWUFBTUosSUFBSSxDQUFDSyxJQUFMLEVBQU47QUFDRCxLQUZJLENBQUw7QUFHQUMs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TUFBTSxDQUFDUyxPQUFQO0FBQ0QsS0FUQyxDQUFGO0FBVUQsR0E5Q08sQ0FBUjtBQStDRCxDQS9FTyxDQUFSIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgdGVlblByb2Nlc3MgZnJvbSAndGVlbl9wcm9jZXNzJztcbmltcG9ydCBzaW5vbiBmcm9tICdzaW5vbic7XG5pbXBvcnQgeyBwcm9jZXNzIH0gZnJvbSAnLi4vbGliL2luZGV4LmpzJztcbmltcG9ydCB7IHJldHJ5SW50ZXJ2YWwgfSBmcm9tICdhc3luY2JveCc7XG5cblxuXG5jb25zdCBTdWJQcm9jZXNzID0gdGVlblByb2Nlc3MuU3ViUHJvY2VzcztcblxuZGVzY3JpYmUoJ3Byb2Nlc3MnLCBmdW5jdGlvbiAoKSB7XG4gIGRlc2NyaWJlKCdnZXRQcm9jZXNzSWRzJywgZnVuY3Rpb24gKCkge1xuICAgIGxldCBwcm9jO1xuICAgIGJlZm9yZShhc3luYyBmdW5jdGlvbiAoKSB7XG4gICAgICBwcm9jID0gbmV3IFN1YlByb2Nlc3MoJ3RhaWwnLCBbJy1mJywgX19maWxlbmFtZV0pO1xuICAgICAgYXdhaXQgcHJvYy5zdGFydCgpO1xuICAgIH0pO1xuICAgIGFmdGVyKGFzeW5jIGZ1bmN0aW9uICgpIHtcbiAgICAgIGF3YWl0IHByb2Muc3RvcCgpO1xuICAgIH0pO1xuICAgIGl0KCdzaG91bGQgZ2V0IHJldHVybiBhbiBhcnJheSBmb3IgZXhpc3RpbmcgcHJvY2VzcycsIGFzeW5jIGZ1bmN0aW9uICgpIHtcbiAgICAgIGxldCBwaWRzID0gYXdhaXQgcHJvY2Vzcy5nZXRQcm9jZXNzSWRzKCd0YWlsJyk7XG4gICAgICBwaWRzLnNob3VsZC5iZS5hbi5pbnN0YW5jZW9mKEFycmF5KTtcbiAgICB9KTtcbiAgICBpdCgnc2hvdWxkIGdldCBwcm9jZXNzIGlkZW50aWZpZXJzIGZvciBleGlzdGluZyBwcm9jZXNzJywgYXN5bmMgZnVuY3Rpb24gKCkge1xuICAgICAgbGV0IHBpZHMgPSBhd2FpdCBwcm9jZXNzLmdldFByb2Nlc3NJZHMoJ3RhaWwnKTtcbiAgICAgIHBpZHMuc2hvdWxkLmhhdmUubGVuZ3RoLmF0LmxlYXN0KDEpO1xuICAgIH0pO1xuICAgIGl0KCdzaG91bGQgZ2V0IGFuIGVtcHR5IGFycmF5IHdoZW4gdGhlIHByb2Nlc3MgZG9lcyBub3QgZXhpc3QnLCBhc3luYyBmdW5jdGlvbiAoKSB7XG4gICAgICBsZXQgcGlkcyA9IGF3YWl0IHByb2Nlc3MuZ2V0UHJvY2Vzc0lkcygnc2FkZmdhc2RmYXNkZicpO1xuICAgICAgcGlkcy5zaG91bGQuaGF2ZS5sZW5ndGgoMCk7XG4gICAgfSk7XG4gICAgaXQoJ3Nob3VsZCB0aHJvdyBhbiBlcnJvciBpZiBwZ3JlcCBmYWlscycsIGFzeW5jIGZ1bmN0aW9uICgpIHtcbiAgICAgIGxldCB0cE1vY2sgPSBzaW5vbi5tb2NrKHRlZW5Qcm9jZXNzKTtcbiAgICAgIHRwTW9jay5leHBlY3RzKCdleGVjJykudGhyb3dzKHttZXNzYWdlOiAnT29wcycsIGNvZGU6IDJ9KTtcblxuICAgICAgYXdhaXQgcHJvY2Vzcy5nZXRQcm9jZXNzSWRzKCd0YWlsJykuc2hvdWxkLmV2ZW50dWFsbHkuYmUucmVqZWN0ZWRXaXRoKC9Pb3BzLyk7XG5cbiAgICAgIHRwTW9jay5yZXN0b3JlKCk7XG4gICAgfSk7XG4gIH0pO1xuXG4gIGRlc2NyaWJlKCdraWxsUHJvY2VzcycsIGZ1bmN0aW9uICgpIHtcbiAgICBsZXQgcHJvYztcbiAgICBiZWZvcmVFYWNoKGFzeW5jIGZ1bmN0aW9uICgpIHtcbiAgICAgIHByb2MgPSBuZXcgU3ViUHJvY2VzcygndGFpbCcsIFsnLWYnLCBfX2ZpbGVuYW1lXSk7XG4gICAgICBhd2FpdCBwcm9jLnN0YXJ0KCk7XG4gICAgfSk7XG4gICAgYWZ0ZXJFYWNoKGFzeW5jIGZ1bmN0aW9uICgpIHtcbiAgICAgIGlmIChwcm9jLmlzUnVubmluZykge1xuICAgICAgICBhd2FpdCBwcm9jLnN0b3AoKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgICBpdCgnc2hvdWxkIGtpbGwgcHJvY2VzcyB0aGF0IGlzIHJ1bm5pbmcnLCBhc3luYyBmdW5jdGlvbiAoKSB7XG4gICAgICBwcm9jLmlzUnVubmluZy5zaG91bGQuYmUudHJ1ZTtcbiAgICAgIGF3YWl0IHByb2Nlc3Mua2lsbFByb2Nlc3MoJ3RhaWwnKTtcblxuICAgICAgLy8gaXQgbWF5IHRha2UgYSBtb21lbnQgdG8gYWN0dWFsbHkgYmUgcmVnaXN0ZXJlZCBhcyBraWxsZWRcbiAgICAgIGF3YWl0IHJldHJ5SW50ZXJ2YWwoMTAsIDEwMCwgYXN5bmMgKCkgPT4geyAvLyBlc2xpbnQtZGlzYWJsZS1saW5lIHJlcXVpcmUtYXdhaXRcbiAgICAgICAgcHJvYy5pc1J1bm5pbmcuc2hvdWxkLmJlLmZhbHNlO1xuICAgICAgfSk7XG4gICAgfSk7XG4gICAgaXQoJ3Nob3VsZCBkbyBub3RoaW5nIGlmIHRoZSBwcm9jZXNzIGRvZXMgbm90IGV4aXN0JywgYXN5bmMgZnVuY3Rpb24gKCkge1xuICAgICAgcHJvYy5pc1J1bm5pbmcuc2hvdWxkLmJlLnRydWU7XG4gICAgICBhd2FpdCBwcm9jZXNzLmtpbGxQcm9jZXNzKCdhc2RmYXNkZmFzZGYnKTtcblxuICAgICAgYXdhaXQgcmV0cnlJbnRlcnZhbCgxMCwgMTAwLCBhc3luYyAoKSA9PiB7IC8vIGVzbGludC1kaXNhYmxlLWxpbmUgcmVxdWlyZS1hd2FpdFxuICAgICAgICBwcm9jLmlzUnVubmluZy5zaG91bGQuYmUuZmFsc2U7XG4gICAgICB9KS5zaG91bGQuZXZlbnR1YWxseS5iZS5yZWplY3RlZDtcbiAgICB9KTtcbiAgICBpdCgnc2hvdWxkIHRocm93IGFuIGVycm9yIGlmIHBncmVwIGZhaWxzJywgYXN5bmMgZnVuY3Rpb24gKCkge1xuICAgICAgbGV0IHRwTW9jayA9IHNpbm9uLm1vY2sodGVlblByb2Nlc3MpO1xuICAgICAgdHBNb2NrLmV4cGVjdHMoJ2V4ZWMnKS50aHJvd3Moe21lc3NhZ2U6ICdPb3BzJywgY29kZTogMn0pO1xuXG4gICAgICBhd2FpdCBwcm9jZXNzLmtpbGxQcm9jZXNzKCd0YWlsJykuc2hvdWxkLmV2ZW50dWFsbHkuYmUucmVqZWN0ZWRXaXRoKC9Pb3BzLyk7XG5cbiAgICAgIHRwTW9jay5yZXN0b3JlKCk7XG4gICAgfSk7XG4gICAgaXQoJ3Nob3VsZCB0aHJvdyBhbiBlcnJvciBpZiBwa2lsbCBmYWlscycsIGFzeW5jIGZ1bmN0aW9uICgpIHtcbiAgICAgIGxldCB0cE1vY2sgPSBzaW5vbi5tb2NrKHRlZW5Qcm9jZXNzKTtcbiAgICAgIHRwTW9jay5leHBlY3RzKCdleGVjJykudHdpY2UoKVxuICAgICAgICAub25GaXJzdENhbGwoKS5yZXR1cm5zKHtzdGRvdXQ6ICc0Mlxcbid9KVxuICAgICAgICAub25TZWNvbmRDYWxsKCkudGhyb3dzKHttZXNzYWdlOiAnT29wcycsIGNvZGU6IDJ9KTtcblxuICAgICAgYXdhaXQgcHJvY2Vzcy5raWxsUHJvY2VzcygndGFpbCcpLnNob3VsZC5ldmVudHVhbGx5LmJlLnJlamVjdGVkV2l0aCgvT29wcy8pO1xuXG4gICAgICB0cE1vY2sucmVzdG9yZSgpO1xuICAgIH0pO1xuICB9KTtcbn0pO1xuIl0sImZpbGUiOiJ0ZXN0L3Byb2Nlc3Mtc3BlY3MuanMiLCJzb3VyY2VSb290IjoiLi4vLi4ifQ==
|
|
@@ -1,136 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
|
|
5
|
-
require("source-map-support/register");
|
|
6
|
-
|
|
7
|
-
var _index = require("../lib/index.js");
|
|
8
|
-
|
|
9
|
-
var _os = _interopRequireDefault(require("os"));
|
|
10
|
-
|
|
11
|
-
var _sinon = _interopRequireDefault(require("sinon"));
|
|
12
|
-
|
|
13
|
-
var teen_process = _interopRequireWildcard(require("teen_process"));
|
|
14
|
-
|
|
15
|
-
var _lodash = _interopRequireDefault(require("lodash"));
|
|
16
|
-
|
|
17
|
-
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
18
|
-
|
|
19
|
-
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
20
|
-
|
|
21
|
-
let sandbox,
|
|
22
|
-
tpMock,
|
|
23
|
-
osMock = null;
|
|
24
|
-
let SANDBOX = Symbol();
|
|
25
|
-
let mocks = {};
|
|
26
|
-
let libs = {
|
|
27
|
-
teen_process,
|
|
28
|
-
os: _os.default,
|
|
29
|
-
system: _index.system
|
|
30
|
-
};
|
|
31
|
-
describe('system', function () {
|
|
32
|
-
describe('isX functions', function () {
|
|
33
|
-
beforeEach(function () {
|
|
34
|
-
osMock = _sinon.default.mock(_os.default);
|
|
35
|
-
});
|
|
36
|
-
afterEach(function () {
|
|
37
|
-
osMock.verify();
|
|
38
|
-
});
|
|
39
|
-
it('should correctly return Windows System if it is a Windows', function () {
|
|
40
|
-
osMock.expects('type').returns('Windows_NT');
|
|
41
|
-
_index.system.isWindows().should.be.true;
|
|
42
|
-
});
|
|
43
|
-
it('should correctly return Mac if it is a Mac', function () {
|
|
44
|
-
osMock.expects('type').returns('Darwin');
|
|
45
|
-
_index.system.isMac().should.be.true;
|
|
46
|
-
});
|
|
47
|
-
it('should correctly return Linux if it is a Linux', function () {
|
|
48
|
-
osMock.expects('type').twice().returns('Linux');
|
|
49
|
-
_index.system.isLinux().should.be.true;
|
|
50
|
-
});
|
|
51
|
-
});
|
|
52
|
-
describe('mac OSX version', function () {
|
|
53
|
-
beforeEach(function () {
|
|
54
|
-
tpMock = _sinon.default.mock(teen_process);
|
|
55
|
-
});
|
|
56
|
-
afterEach(function () {
|
|
57
|
-
tpMock.verify();
|
|
58
|
-
});
|
|
59
|
-
it('should return correct version for 10.10.5', async function () {
|
|
60
|
-
tpMock.expects('exec').once().withExactArgs('sw_vers', ['-productVersion']).returns({
|
|
61
|
-
stdout: '10.10.5'
|
|
62
|
-
});
|
|
63
|
-
await _index.system.macOsxVersion().should.eventually.equal('10.10');
|
|
64
|
-
});
|
|
65
|
-
it('should return correct version for 10.12', async function () {
|
|
66
|
-
tpMock.expects('exec').once().withExactArgs('sw_vers', ['-productVersion']).returns({
|
|
67
|
-
stdout: '10.12.0'
|
|
68
|
-
});
|
|
69
|
-
await _index.system.macOsxVersion().should.eventually.equal('10.12');
|
|
70
|
-
});
|
|
71
|
-
it('should return correct version for 10.12 with newline', async function () {
|
|
72
|
-
tpMock.expects('exec').once().withExactArgs('sw_vers', ['-productVersion']).returns({
|
|
73
|
-
stdout: '10.12 \n'
|
|
74
|
-
});
|
|
75
|
-
await _index.system.macOsxVersion().should.eventually.equal('10.12');
|
|
76
|
-
});
|
|
77
|
-
it("should throw an error if OSX version can't be determined", async function () {
|
|
78
|
-
let invalidOsx = 'error getting operation system version blabla';
|
|
79
|
-
tpMock.expects('exec').once().withExactArgs('sw_vers', ['-productVersion']).returns({
|
|
80
|
-
stdout: invalidOsx
|
|
81
|
-
});
|
|
82
|
-
await _index.system.macOsxVersion().should.eventually.be.rejectedWith(new RegExp(_lodash.default.escapeRegExp(invalidOsx)));
|
|
83
|
-
});
|
|
84
|
-
});
|
|
85
|
-
describe('architecture', function () {
|
|
86
|
-
beforeEach(function () {
|
|
87
|
-
sandbox = _sinon.default.createSandbox();
|
|
88
|
-
mocks[SANDBOX] = sandbox;
|
|
89
|
-
|
|
90
|
-
for (let [key, value] of _lodash.default.toPairs(libs)) {
|
|
91
|
-
mocks[key] = sandbox.mock(value);
|
|
92
|
-
}
|
|
93
|
-
});
|
|
94
|
-
afterEach(function () {
|
|
95
|
-
sandbox.restore();
|
|
96
|
-
});
|
|
97
|
-
it('should return correct architecture if it is a 64 bit Mac/Linux', async function () {
|
|
98
|
-
mocks.os.expects('type').thrice().returns('Darwin');
|
|
99
|
-
mocks.teen_process.expects('exec').once().withExactArgs('uname', ['-m']).returns({
|
|
100
|
-
stdout: 'x86_64'
|
|
101
|
-
});
|
|
102
|
-
let arch = await _index.system.arch();
|
|
103
|
-
arch.should.equal('64');
|
|
104
|
-
mocks[SANDBOX].verify();
|
|
105
|
-
});
|
|
106
|
-
it('should return correct architecture if it is a 32 bit Mac/Linux', async function () {
|
|
107
|
-
mocks.os.expects('type').twice().returns('Linux');
|
|
108
|
-
mocks.teen_process.expects('exec').once().withExactArgs('uname', ['-m']).returns({
|
|
109
|
-
stdout: 'i686'
|
|
110
|
-
});
|
|
111
|
-
let arch = await _index.system.arch();
|
|
112
|
-
arch.should.equal('32');
|
|
113
|
-
mocks[SANDBOX].verify();
|
|
114
|
-
});
|
|
115
|
-
it('should return correct architecture if it is a 64 bit Windows', async function () {
|
|
116
|
-
mocks.os.expects('type').thrice().returns('Windows_NT');
|
|
117
|
-
mocks.system.expects('isOSWin64').once().returns(true);
|
|
118
|
-
let arch = await _index.system.arch();
|
|
119
|
-
arch.should.equal('64');
|
|
120
|
-
mocks[SANDBOX].verify();
|
|
121
|
-
});
|
|
122
|
-
it('should return correct architecture if it is a 32 bit Windows', async function () {
|
|
123
|
-
mocks.os.expects('type').thrice().returns('Windows_NT');
|
|
124
|
-
mocks.system.expects('isOSWin64').once().returns(false);
|
|
125
|
-
let arch = await _index.system.arch();
|
|
126
|
-
arch.should.equal('32');
|
|
127
|
-
mocks[SANDBOX].verify();
|
|
128
|
-
});
|
|
129
|
-
});
|
|
130
|
-
it('should know architecture', function () {
|
|
131
|
-
return _index.system.arch();
|
|
132
|
-
});
|
|
133
|
-
});require('source-map-support').install();
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInRlc3Qvc3lzdGVtLXNwZWNzLmpzIl0sIm5hbWVzIjpbInNhbmRib3giLCJ0cE1vY2siLCJvc01vY2siLCJTQU5EQk9YIiwiU3ltYm9sIiwibW9ja3MiLCJsaWJzIiwidGVlbl9wcm9jZXNzIiwib3MiLCJzeXN0ZW0iLCJkZXNjcmliZSIsImJlZm9yZUVhY2giLCJzaW5vbiIsIm1vY2siLCJhZnRlckVhY2giLCJ2ZXJpZnkiLCJpdCIsImV4cGVjdHMiLCJyZXR1cm5zIiwiaXNXaW5kb3dzIiwic2hvdWxkIiwiYmUiLCJ0cnVlIiwiaXNNYWMiLCJ0d2ljZSIsImlzTGludXgiLCJvbmNlIiwid2l0aEV4YWN0QXJncyIsInN0ZG91dCIsIm1hY09zeFZlcnNpb24iLCJldmVudHVhbGx5IiwiZXF1YWwiLCJpbnZhbGlkT3N4IiwicmVqZWN0ZWRXaXRoIiwiUmVnRXhwIiwiXyIsImVzY2FwZVJlZ0V4cCIsImNyZWF0ZVNhbmRib3giLCJrZXkiLCJ2YWx1ZSIsInRvUGFpcnMiLCJyZXN0b3JlIiwidGhyaWNlIiwiYXJjaCJdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7Ozs7OztBQUdBLElBQUlBLE9BQUo7QUFBQSxJQUFhQyxNQUFiO0FBQUEsSUFBcUJDLE1BQU0sR0FBRyxJQUE5QjtBQUNBLElBQUlDLE9BQU8sR0FBR0MsTUFBTSxFQUFwQjtBQUNBLElBQUlDLEtBQUssR0FBRyxFQUFaO0FBQ0EsSUFBSUMsSUFBSSxHQUFHO0FBQUNDLEVBQUFBLFlBQUQ7QUFBZUMsRUFBQUEsRUFBRSxFQUFGQSxXQUFmO0FBQW1CQyxFQUFBQSxNQUFNLEVBQU5BO0FBQW5CLENBQVg7QUFFQUMsUUFBUSxDQUFDLFFBQUQsRUFBVyxZQUFZO0FBQzdCQSxFQUFBQSxRQUFRLENBQUMsZUFBRCxFQUFrQixZQUFZO0FBQ3BDQyxJQUFBQSxVQUFVLENBQUMsWUFBWTtBQUNyQlQsTUFBQUEsTUFBTSxHQUFHVSxlQUFNQyxJQUFOLENBQVdMLFdBQVgs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QUFiLENBQXFCLFdBQXJCLEVBQWtDUyxJQUFsQyxHQUF5Q1IsT0FBekMsQ0FBaUQsSUFBakQ7QUFDQSxVQUFJeUIsSUFBSSxHQUFHLE1BQU1sQyxjQUFPa0MsSUFBUCxFQUFqQjtBQUNBQSxNQUFBQSxJQUFJLENBQUN2QixNQUFMLENBQVlXLEtBQVosQ0FBa0IsSUFBbEI7QUFDQTFCLE1BQUFBLEtBQUssQ0FBQ0YsT0FBRCxDQUFMLENBQWVZLE1BQWY7QUFDRCxLQU5DLENBQUY7QUFRQUMsSUFBQUEsRUFBRSxDQUFDLDhEQUFELEVBQWlFLGtCQUFrQjtBQUNuRlgsTUFBQUEsS0FBSyxDQUFDRyxFQUFOLENBQVNTLE9BQVQsQ0FBaUIsTUFBakIsRUFBeUJ5QixNQUF6QixHQUFrQ3hCLE9BQWxDLENBQTBDLFlBQTFDO0FBQ0FiLE1BQUFBLEtBQUssQ0FBQ0ksTUFBTixDQUFhUSxPQUFiLENBQXFCLFdBQXJCLEVBQWtDUyxJQUFsQyxHQUF5Q1IsT0FBekMsQ0FBaUQsS0FBakQ7QUFDQSxVQUFJeUIsSUFBSSxHQUFHLE1BQU1sQyxjQUFPa0MsSUFBUCxFQUFqQjtBQUNBQSxNQUFBQSxJQUFJLENBQUN2QixNQUFMLENBQVlXLEtBQVosQ0FBa0IsSUFBbEI7QUFDQTFCLE1BQUFBLEtBQUssQ0FBQ0YsT0FBRCxDQUFMLENBQWVZLE1BQWY7QUFDRCxLQU5DLENBQUY7QUFPRCxHQTVDTyxDQUFSO0FBOENBQyxFQUFBQSxFQUFFLENBQUMsMEJBQUQsRUFBNkIsWUFBWTtBQUN6QyxXQUFPUCxjQUFPa0MsSUFBUCxFQUFQO0FBQ0QsR0FGQyxDQUFGO0FBR0QsQ0F4R08sQ0FBUiIsInNvdXJjZXNDb250ZW50IjpbIlxuaW1wb3J0IHsgc3lzdGVtIH0gZnJvbSAnLi4vbGliL2luZGV4LmpzJztcbmltcG9ydCBvcyBmcm9tICdvcyc7XG5pbXBvcnQgc2lub24gZnJvbSAnc2lub24nO1xuaW1wb3J0ICogYXMgdGVlbl9wcm9jZXNzIGZyb20gJ3RlZW5fcHJvY2Vzcyc7XG5pbXBvcnQgXyBmcm9tICdsb2Rhc2gnO1xuXG5cbmxldCBzYW5kYm94LCB0cE1vY2ssIG9zTW9jayA9IG51bGw7XG5sZXQgU0FOREJPWCA9IFN5bWJvbCgpO1xubGV0IG1vY2tzID0ge307XG5sZXQgbGlicyA9IHt0ZWVuX3Byb2Nlc3MsIG9zLCBzeXN0ZW19O1xuXG5kZXNjcmliZSgnc3lzdGVtJywgZnVuY3Rpb24gKCkge1xuICBkZXNjcmliZSgnaXNYIGZ1bmN0aW9ucycsIGZ1bmN0aW9uICgpIHtcbiAgICBiZWZvcmVFYWNoKGZ1bmN0aW9uICgpIHtcbiAgICAgIG9zTW9jayA9IHNpbm9uLm1vY2sob3MpO1xuICAgIH0pO1xuICAgIGFmdGVyRWFjaChmdW5jdGlvbiAoKSB7XG4gICAgICBvc01vY2sudmVyaWZ5KCk7XG4gICAgfSk7XG5cbiAgICBpdCgnc2hvdWxkIGNvcnJlY3RseSByZXR1cm4gV2luZG93cyBTeXN0ZW0gaWYgaXQgaXMgYSBXaW5kb3dzJywgZnVuY3Rpb24gKCkge1xuICAgICAgb3NNb2NrLmV4cGVjdHMoJ3R5cGUnKS5yZXR1cm5zKCdXaW5kb3dzX05UJyk7XG4gICAgICBzeXN0ZW0uaXNXaW5kb3dzKCkuc2hvdWxkLmJlLnRydWU7XG4gICAgfSk7XG5cbiAgICBpdCgnc2hvdWxkIGNvcnJlY3RseSByZXR1cm4gTWFjIGlmIGl0IGlzIGEgTWFjJywgZnVuY3Rpb24gKCkge1xuICAgICAgb3NNb2NrLmV4cGVjdHMoJ3R5cGUnKS5yZXR1cm5zKCdEYXJ3aW4nKTtcbiAgICAgIHN5c3RlbS5pc01hYygpLnNob3VsZC5iZS50cnVlO1xuICAgIH0pO1xuXG4gICAgaXQoJ3Nob3VsZCBjb3JyZWN0bHkgcmV0dXJuIExpbnV4IGlmIGl0IGlzIGEgTGludXgnLCBmdW5jdGlvbiAoKSB7XG4gICAgICBvc01vY2suZXhwZWN0cygndHlwZScpLnR3aWNlKCkucmV0dXJucygnTGludXgnKTtcbiAgICAgIHN5c3RlbS5pc0xpbnV4KCkuc2hvdWxkLmJlLnRydWU7XG4gICAgfSk7XG4gIH0pO1xuXG4gIGRlc2NyaWJlKCdtYWMgT1NYIHZlcnNpb24nLCBmdW5jdGlvbiAoKSB7XG4gICAgYmVmb3JlRWFjaChmdW5jdGlvbiAoKSB7XG4gICAgICB0cE1vY2sgPSBzaW5vbi5tb2NrKHRlZW5fcHJvY2Vzcyk7XG4gICAgfSk7XG4gICAgYWZ0ZXJFYWNoKGZ1bmN0aW9uICgpIHtcbiAgICAgIHRwTW9jay52ZXJpZnkoKTtcbiAgICB9KTtcblxuICAgIGl0KCdzaG91bGQgcmV0dXJuIGNvcnJlY3QgdmVyc2lvbiBmb3IgMTAuMTAuNScsIGFzeW5jIGZ1bmN0aW9uICgpIHtcbiAgICAgIHRwTW9jay5leHBlY3RzKCdleGVjJykub25jZSgpLndpdGhFeGFjdEFyZ3MoJ3N3X3ZlcnMnLCBbJy1wcm9kdWN0VmVyc2lvbiddKS5yZXR1cm5zKHtzdGRvdXQ6ICcxMC4xMC41J30pO1xuICAgICAgYXdhaXQgc3lzdGVtLm1hY09zeFZlcnNpb24oKS5zaG91bGQuZXZlbnR1YWxseS5lcXVhbCgnMTAuMTAnKTtcbiAgICB9KTtcblxuICAgIGl0KCdzaG91bGQgcmV0dXJuIGNvcnJlY3QgdmVyc2lvbiBmb3IgMTAuMTInLCBhc3luYyBmdW5jdGlvbiAoKSB7XG4gICAgICB0cE1vY2suZXhwZWN0cygnZXhlYycpLm9uY2UoKS53aXRoRXhhY3RBcmdzKCdzd192ZXJzJywgWyctcHJvZHVjdFZlcnNpb24nXSkucmV0dXJucyh7c3Rkb3V0OiAnMTAuMTIuMCd9KTtcbiAgICAgIGF3YWl0IHN5c3RlbS5tYWNPc3hWZXJzaW9uKCkuc2hvdWxkLmV2ZW50dWFsbHkuZXF1YWwoJzEwLjEyJyk7XG4gICAgfSk7XG5cbiAgICBpdCgnc2hvdWxkIHJldHVybiBjb3JyZWN0IHZlcnNpb24gZm9yIDEwLjEyIHdpdGggbmV3bGluZScsIGFzeW5jIGZ1bmN0aW9uICgpIHtcbiAgICAgIHRwTW9jay5leHBlY3RzKCdleGVjJykub25jZSgpLndpdGhFeGFjdEFyZ3MoJ3N3X3ZlcnMnLCBbJy1wcm9kdWN0VmVyc2lvbiddKS5yZXR1cm5zKHtzdGRvdXQ6ICcxMC4xMiAgIFxcbid9KTtcbiAgICAgIGF3YWl0IHN5c3RlbS5tYWNPc3hWZXJzaW9uKCkuc2hvdWxkLmV2ZW50dWFsbHkuZXF1YWwoJzEwLjEyJyk7XG4gICAgfSk7XG5cbiAgICBpdChcInNob3VsZCB0aHJvdyBhbiBlcnJvciBpZiBPU1ggdmVyc2lvbiBjYW4ndCBiZSBkZXRlcm1pbmVkXCIsIGFzeW5jIGZ1bmN0aW9uICgpIHtcbiAgICAgIGxldCBpbnZhbGlkT3N4ID0gJ2Vycm9yIGdldHRpbmcgb3BlcmF0aW9uIHN5c3RlbSB2ZXJzaW9uIGJsYWJsYSc7XG4gICAgICB0cE1vY2suZXhwZWN0cygnZXhlYycpLm9uY2UoKS53aXRoRXhhY3RBcmdzKCdzd192ZXJzJywgWyctcHJvZHVjdFZlcnNpb24nXSkucmV0dXJucyh7c3Rkb3V0OiBpbnZhbGlkT3N4fSk7XG4gICAgICBhd2FpdCBzeXN0ZW0ubWFjT3N4VmVyc2lvbigpLnNob3VsZC5ldmVudHVhbGx5LmJlLnJlamVjdGVkV2l0aChuZXcgUmVnRXhwKF8uZXNjYXBlUmVnRXhwKGludmFsaWRPc3gpKSk7XG4gICAgfSk7XG4gIH0pO1xuXG4gIGRlc2NyaWJlKCdhcmNoaXRlY3R1cmUnLCBmdW5jdGlvbiAoKSB7XG4gICAgYmVmb3JlRWFjaChmdW5jdGlvbiAoKSB7XG4gICAgICBzYW5kYm94ID0gc2lub24uY3JlYXRlU2FuZGJveCgpO1xuICAgICAgbW9ja3NbU0FOREJPWF0gPSBzYW5kYm94O1xuICAgICAgZm9yIChsZXQgW2tleSwgdmFsdWVdIG9mIF8udG9QYWlycyhsaWJzKSkge1xuICAgICAgICBtb2Nrc1trZXldID0gc2FuZGJveC5tb2NrKHZhbHVlKTtcbiAgICAgIH1cbiAgICB9KTtcblxuICAgIGFmdGVyRWFjaChmdW5jdGlvbiAoKSB7XG4gICAgICBzYW5kYm94LnJlc3RvcmUoKTtcbiAgICB9KTtcblxuICAgIGl0KCdzaG91bGQgcmV0dXJuIGNvcnJlY3QgYXJjaGl0ZWN0dXJlIGlmIGl0IGlzIGEgNjQgYml0IE1hYy9MaW51eCcsIGFzeW5jIGZ1bmN0aW9uICgpIHtcbiAgICAgIG1vY2tzLm9zLmV4cGVjdHMoJ3R5cGUnKS50aHJpY2UoKS5yZXR1cm5zKCdEYXJ3aW4nKTtcbiAgICAgIG1vY2tzLnRlZW5fcHJvY2Vzcy5leHBlY3RzKCdleGVjJykub25jZSgpLndpdGhFeGFjdEFyZ3MoJ3VuYW1lJywgWyctbSddKS5yZXR1cm5zKHtzdGRvdXQ6ICd4ODZfNjQnfSk7XG4gICAgICBsZXQgYXJjaCA9IGF3YWl0IHN5c3RlbS5hcmNoKCk7XG4gICAgICBhcmNoLnNob3VsZC5lcXVhbCgnNjQnKTtcbiAgICAgIG1vY2tzW1NBTkRCT1hdLnZlcmlmeSgpO1xuICAgIH0pO1xuXG4gICAgaXQoJ3Nob3VsZCByZXR1cm4gY29ycmVjdCBhcmNoaXRlY3R1cmUgaWYgaXQgaXMgYSAzMiBiaXQgTWFjL0xpbnV4JywgYXN5bmMgZnVuY3Rpb24gKCkge1xuICAgICAgbW9ja3Mub3MuZXhwZWN0cygndHlwZScpLnR3aWNlKCkucmV0dXJucygnTGludXgnKTtcbiAgICAgIG1vY2tzLnRlZW5fcHJvY2Vzcy5leHBlY3RzKCdleGVjJykub25jZSgpLndpdGhFeGFjdEFyZ3MoJ3VuYW1lJywgWyctbSddKS5yZXR1cm5zKHtzdGRvdXQ6ICdpNjg2J30pO1xuICAgICAgbGV0IGFyY2ggPSBhd2FpdCBzeXN0ZW0uYXJjaCgpO1xuICAgICAgYXJjaC5zaG91bGQuZXF1YWwoJzMyJyk7XG4gICAgICBtb2Nrc1tTQU5EQk9YXS52ZXJpZnkoKTtcbiAgICB9KTtcblxuICAgIGl0KCdzaG91bGQgcmV0dXJuIGNvcnJlY3QgYXJjaGl0ZWN0dXJlIGlmIGl0IGlzIGEgNjQgYml0IFdpbmRvd3MnLCBhc3luYyBmdW5jdGlvbiAoKSB7XG4gICAgICBtb2Nrcy5vcy5leHBlY3RzKCd0eXBlJykudGhyaWNlKCkucmV0dXJucygnV2luZG93c19OVCcpO1xuICAgICAgbW9ja3Muc3lzdGVtLmV4cGVjdHMoJ2lzT1NXaW42NCcpLm9uY2UoKS5yZXR1cm5zKHRydWUpO1xuICAgICAgbGV0IGFyY2ggPSBhd2FpdCBzeXN0ZW0uYXJjaCgpO1xuICAgICAgYXJjaC5zaG91bGQuZXF1YWwoJzY0Jyk7XG4gICAgICBtb2Nrc1tTQU5EQk9YXS52ZXJpZnkoKTtcbiAgICB9KTtcblxuICAgIGl0KCdzaG91bGQgcmV0dXJuIGNvcnJlY3QgYXJjaGl0ZWN0dXJlIGlmIGl0IGlzIGEgMzIgYml0IFdpbmRvd3MnLCBhc3luYyBmdW5jdGlvbiAoKSB7XG4gICAgICBtb2Nrcy5vcy5leHBlY3RzKCd0eXBlJykudGhyaWNlKCkucmV0dXJucygnV2luZG93c19OVCcpO1xuICAgICAgbW9ja3Muc3lzdGVtLmV4cGVjdHMoJ2lzT1NXaW42NCcpLm9uY2UoKS5yZXR1cm5zKGZhbHNlKTtcbiAgICAgIGxldCBhcmNoID0gYXdhaXQgc3lzdGVtLmFyY2goKTtcbiAgICAgIGFyY2guc2hvdWxkLmVxdWFsKCczMicpO1xuICAgICAgbW9ja3NbU0FOREJPWF0udmVyaWZ5KCk7XG4gICAgfSk7XG4gIH0pO1xuXG4gIGl0KCdzaG91bGQga25vdyBhcmNoaXRlY3R1cmUnLCBmdW5jdGlvbiAoKSB7XG4gICAgcmV0dXJuIHN5c3RlbS5hcmNoKCk7XG4gIH0pO1xufSk7XG4iXSwiZmlsZSI6InRlc3Qvc3lzdGVtLXNwZWNzLmpzIiwic291cmNlUm9vdCI6Ii4uLy4uIn0=
|
|
@@ -1,86 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
require("source-map-support/register");
|
|
4
|
-
|
|
5
|
-
var _index = require("../lib/index.js");
|
|
6
|
-
|
|
7
|
-
describe('tempdir', function () {
|
|
8
|
-
afterEach(function () {
|
|
9
|
-
delete process.env.APPIUM_TMP_DIR;
|
|
10
|
-
});
|
|
11
|
-
it('should be able to generate a path', async function () {
|
|
12
|
-
const path = await _index.tempDir.path({
|
|
13
|
-
prefix: 'myfile',
|
|
14
|
-
suffix: '.tmp'
|
|
15
|
-
});
|
|
16
|
-
path.should.exist;
|
|
17
|
-
path.should.include('myfile.tmp');
|
|
18
|
-
});
|
|
19
|
-
it('should be able to generate a path with process.env.APPIUM_TMP_DIR', async function () {
|
|
20
|
-
const preRootDirPath = await _index.tempDir.openDir();
|
|
21
|
-
process.env.APPIUM_TMP_DIR = preRootDirPath;
|
|
22
|
-
const path = await _index.tempDir.path({
|
|
23
|
-
prefix: 'myfile',
|
|
24
|
-
suffix: '.tmp'
|
|
25
|
-
});
|
|
26
|
-
path.should.exist;
|
|
27
|
-
path.should.include(preRootDirPath);
|
|
28
|
-
path.should.include('myfile.tmp');
|
|
29
|
-
});
|
|
30
|
-
it('should be able to create a temp file', async function () {
|
|
31
|
-
let res = await _index.tempDir.open({
|
|
32
|
-
prefix: 'my-test-file',
|
|
33
|
-
suffix: '.zip'
|
|
34
|
-
});
|
|
35
|
-
res.should.exist;
|
|
36
|
-
res.path.should.exist;
|
|
37
|
-
res.path.should.include('my-test-file.zip');
|
|
38
|
-
res.fd.should.exist;
|
|
39
|
-
await _index.fs.exists(res.path).should.eventually.be.ok;
|
|
40
|
-
});
|
|
41
|
-
it('should be able to create a temp file with process.env.APPIUM_TMP_DIR', async function () {
|
|
42
|
-
const preRootDirPath = await _index.tempDir.openDir();
|
|
43
|
-
process.env.APPIUM_TMP_DIR = preRootDirPath;
|
|
44
|
-
let res = await _index.tempDir.open({
|
|
45
|
-
prefix: 'my-test-file',
|
|
46
|
-
suffix: '.zip'
|
|
47
|
-
});
|
|
48
|
-
res.should.exist;
|
|
49
|
-
res.path.should.exist;
|
|
50
|
-
res.path.should.include(preRootDirPath);
|
|
51
|
-
res.path.should.include('my-test-file.zip');
|
|
52
|
-
res.fd.should.exist;
|
|
53
|
-
await _index.fs.exists(res.path).should.eventually.be.ok;
|
|
54
|
-
});
|
|
55
|
-
it('should generate a random temp dir', async function () {
|
|
56
|
-
let res = await _index.tempDir.openDir();
|
|
57
|
-
res.should.be.a('string');
|
|
58
|
-
await _index.fs.exists(res).should.eventually.be.ok;
|
|
59
|
-
let res2 = await _index.tempDir.openDir();
|
|
60
|
-
await _index.fs.exists(res2).should.eventually.be.ok;
|
|
61
|
-
res.should.not.equal(res2);
|
|
62
|
-
});
|
|
63
|
-
it('should generate a random temp dir, but the same with process.env.APPIUM_TMP_DIR', async function () {
|
|
64
|
-
const preRootDirPath = await _index.tempDir.openDir();
|
|
65
|
-
process.env.APPIUM_TMP_DIR = preRootDirPath;
|
|
66
|
-
const res = await _index.tempDir.openDir();
|
|
67
|
-
res.should.be.a('string');
|
|
68
|
-
await _index.fs.exists(res).should.eventually.be.ok;
|
|
69
|
-
const res2 = await _index.tempDir.openDir();
|
|
70
|
-
await _index.fs.exists(res2).should.eventually.be.ok;
|
|
71
|
-
res.should.include(preRootDirPath);
|
|
72
|
-
res2.should.include(preRootDirPath);
|
|
73
|
-
res.should.not.equal(res2);
|
|
74
|
-
});
|
|
75
|
-
it('should generate one temp dir used for the life of the process', async function () {
|
|
76
|
-
let res = await _index.tempDir.staticDir();
|
|
77
|
-
res.should.be.a('string');
|
|
78
|
-
await _index.fs.exists(res).should.eventually.be.ok;
|
|
79
|
-
let res2 = await _index.tempDir.staticDir();
|
|
80
|
-
await _index.fs.exists(res2).should.eventually.be.ok;
|
|
81
|
-
res.should.equal(res2);
|
|
82
|
-
});
|
|
83
|
-
});require('source-map-support').install();
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInRlc3QvdGVtcGRpci1zcGVjcy5qcyJdLCJuYW1lcyI6WyJkZXNjcmliZSIsImFmdGVyRWFjaCIsInByb2Nlc3MiLCJlbnYiLCJBUFBJVU1fVE1QX0RJUiIsIml0IiwicGF0aCIsInRlbXBEaXIiLCJwcmVmaXgiLCJzdWZmaXgiLCJzaG91bGQiLCJleGlzdCIsImluY2x1ZGUiLCJwcmVSb290RGlyUGF0aCIsIm9wZW5EaXIiLCJyZXMiLCJvcGVuIiwiZmQiLCJmcyIsImV4aXN0cyIsImV2ZW50dWFsbHkiLCJiZSIsIm9rIiwiYSIsInJlczIiLCJub3QiLCJlcXVhbCIsInN0YXRpY0RpciJdLCJtYXBwaW5ncyI6Ijs7OztBQUNBOztBQUdBQSxRQUFRLENBQUMsU0FBRCxFQUFZLFlBQVk7QUFDOUJDLEVBQUFBLFNBQVMsQ0FBQyxZQUFZO0FBRXBCLFdBQU9DLE9BQU8sQ0FBQ0MsR0FBUixDQUFZQyxjQUFuQjtBQUNELEdBSFEsQ0FBVDtBQUtBQyxFQUFBQSxFQUFFLENBQUMsbUNBQUQsRUFBc0Msa0JBQWtCO0FBQ3hELFVBQU1DLElBQUksR0FBRyxNQUFNQyxlQUFRRCxJQUFSLENBQWE7QUFBQ0UsTUFBQUEsTUFBTSxFQUFFLFFBQVQ7QUFBbUJDLE1BQUFBLE1BQU0sRUFBRTtBQUEzQixLQUFiLENBQW5CO0FBQ0FILElBQUFBLElBQUksQ0FBQ0ksTUFBTCxDQUFZQyxLQUFaO0FBQ0FMLElBQUFBLElBQUksQ0FBQ0ksTUFBTCxDQUFZRSxPQUFaLENBQW9CLFlBQXBCO0FBQ0QsR0FKQyxDQUFGO0FBTUFQLEVBQUFBLEVBQUUsQ0FBQyxtRUFBRCxFQUFzRSxrQkFBa0I7QUFDeEYsVUFBTVEsY0FBYyxHQUFHLE1BQU1OLGVBQVFPLE9BQVIsRUFBN0I7QUFDQVosSUFBQUEsT0FBTyxDQUFDQyxHQUFSLENBQVlDLGNBQVosR0FBNkJTLGNBQTdCO0FBRUEsVUFBTVAsSUFBSSxHQUFHLE1BQU1DLGVBQVFELElBQVIsQ0FBYTtBQUFDRSxNQUFBQSxNQUFNLEVBQUUsUUFB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QWhCLENBQXVCVSxVQUF2QixDQUFrQ0MsRUFBbEMsQ0FBcUNDLEVBQTNDO0FBQ0FQLElBQUFBLEdBQUcsQ0FBQ0wsTUFBSixDQUFXZ0IsS0FBWCxDQUFpQkYsSUFBakI7QUFDRCxHQVBDLENBQUY7QUFRRCxDQTNFTyxDQUFSIiwic291cmNlc0NvbnRlbnQiOlsiXG5pbXBvcnQgeyB0ZW1wRGlyLCBmcyB9IGZyb20gJy4uL2xpYi9pbmRleC5qcyc7XG5cblxuZGVzY3JpYmUoJ3RlbXBkaXInLCBmdW5jdGlvbiAoKSB7XG4gIGFmdGVyRWFjaChmdW5jdGlvbiAoKSB7XG4gICAgLy8gc2V0IHRoZSBwcm9jZXNzIGVudiBhcyB1bmRlZmllbmRcbiAgICBkZWxldGUgcHJvY2Vzcy5lbnYuQVBQSVVNX1RNUF9ESVI7XG4gIH0pO1xuXG4gIGl0KCdzaG91bGQgYmUgYWJsZSB0byBnZW5lcmF0ZSBhIHBhdGgnLCBhc3luYyBmdW5jdGlvbiAoKSB7XG4gICAgY29uc3QgcGF0aCA9IGF3YWl0IHRlbXBEaXIucGF0aCh7cHJlZml4OiAnbXlmaWxlJywgc3VmZml4OiAnLnRtcCd9KTtcbiAgICBwYXRoLnNob3VsZC5leGlzdDtcbiAgICBwYXRoLnNob3VsZC5pbmNsdWRlKCdteWZpbGUudG1wJyk7XG4gIH0pO1xuXG4gIGl0KCdzaG91bGQgYmUgYWJsZSB0byBnZW5lcmF0ZSBhIHBhdGggd2l0aCBwcm9jZXNzLmVudi5BUFBJVU1fVE1QX0RJUicsIGFzeW5jIGZ1bmN0aW9uICgpIHtcbiAgICBjb25zdCBwcmVSb290RGlyUGF0aCA9IGF3YWl0IHRlbXBEaXIub3BlbkRpcigpO1xuICAgIHByb2Nlc3MuZW52LkFQUElVTV9UTVBfRElSID0gcHJlUm9vdERpclBhdGg7XG5cbiAgICBjb25zdCBwYXRoID0gYXdhaXQgdGVtcERpci5wYXRoKHtwcmVmaXg6ICdteWZpbGUnLCBzdWZmaXg6ICcudG1wJ30pO1xuICAgIHBhdGguc2hvdWxkLmV4aXN0O1xuICAgIHBhdGguc2hvdWxkLmluY2x1ZGUocHJlUm9vdERpclBhdGgpO1xuICAgIHBhdGguc2hvdWxkLmluY2x1ZGUoJ215ZmlsZS50bXAnKTtcbiAgfSk7XG5cbiAgaXQoJ3Nob3VsZCBiZSBhYmxlIHRvIGNyZWF0ZSBhIHRlbXAgZmlsZScsIGFzeW5jIGZ1bmN0aW9uICgpIHtcbiAgICBsZXQgcmVzID0gYXdhaXQgdGVtcERpci5vcGVuKHtwcmVmaXg6ICdteS10ZXN0LWZpbGUnLCBzdWZmaXg6ICcuemlwJ30pO1xuICAgIHJlcy5zaG91bGQuZXhpc3Q7XG4gICAgcmVzLnBhdGguc2hvdWxkLmV4aXN0O1xuICAgIHJlcy5wYXRoLnNob3VsZC5pbmNsdWRlKCdteS10ZXN0LWZpbGUuemlwJyk7XG4gICAgcmVzLmZkLnNob3VsZC5leGlzdDtcbiAgICBhd2FpdCBmcy5leGlzdHMocmVzLnBhdGgpLnNob3VsZC5ldmVudHVhbGx5LmJlLm9rO1xuICB9KTtcblxuICBpdCgnc2hvdWxkIGJlIGFibGUgdG8gY3JlYXRlIGEgdGVtcCBmaWxlIHdpdGggcHJvY2Vzcy5lbnYuQVBQSVVNX1RNUF9ESVInLCBhc3luYyBmdW5jdGlvbiAoKSB7XG4gICAgY29uc3QgcHJlUm9vdERpclBhdGggPSBhd2FpdCB0ZW1wRGlyLm9wZW5EaXIoKTtcbiAgICBwcm9jZXNzLmVudi5BUFBJVU1fVE1QX0RJUiA9IHByZVJvb3REaXJQYXRoO1xuXG4gICAgbGV0IHJlcyA9IGF3YWl0IHRlbXBEaXIub3Blbih7cHJlZml4OiAnbXktdGVzdC1maWxlJywgc3VmZml4OiAnLnppcCd9KTtcbiAgICByZXMuc2hvdWxkLmV4aXN0O1xuICAgIHJlcy5wYXRoLnNob3VsZC5leGlzdDtcbiAgICByZXMucGF0aC5zaG91bGQuaW5jbHVkZShwcmVSb290RGlyUGF0aCk7XG4gICAgcmVzLnBhdGguc2hvdWxkLmluY2x1ZGUoJ215LXRlc3QtZmlsZS56aXAnKTtcbiAgICByZXMuZmQuc2hvdWxkLmV4aXN0O1xuICAgIGF3YWl0IGZzLmV4aXN0cyhyZXMucGF0aCkuc2hvdWxkLmV2ZW50dWFsbHkuYmUub2s7XG4gIH0pO1xuXG4gIGl0KCdzaG91bGQgZ2VuZXJhdGUgYSByYW5kb20gdGVtcCBkaXInLCBhc3luYyBmdW5jdGlvbiAoKSB7XG4gICAgbGV0IHJlcyA9IGF3YWl0IHRlbXBEaXIub3BlbkRpcigpO1xuICAgIHJlcy5zaG91bGQuYmUuYSgnc3RyaW5nJyk7XG4gICAgYXdhaXQgZnMuZXhpc3RzKHJlcykuc2hvdWxkLmV2ZW50dWFsbHkuYmUub2s7XG4gICAgbGV0IHJlczIgPSBhd2FpdCB0ZW1wRGlyLm9wZW5EaXIoKTtcbiAgICBhd2FpdCBmcy5leGlzdHMocmVzMikuc2hvdWxkLmV2ZW50dWFsbHkuYmUub2s7XG4gICAgcmVzLnNob3VsZC5ub3QuZXF1YWwocmVzMik7XG4gIH0pO1xuXG4gIGl0KCdzaG91bGQgZ2VuZXJhdGUgYSByYW5kb20gdGVtcCBkaXIsIGJ1dCB0aGUgc2FtZSB3aXRoIHByb2Nlc3MuZW52LkFQUElVTV9UTVBfRElSJywgYXN5bmMgZnVuY3Rpb24gKCkge1xuICAgIGNvbnN0IHByZVJvb3REaXJQYXRoID0gYXdhaXQgdGVtcERpci5vcGVuRGlyKCk7XG4gICAgcHJvY2Vzcy5lbnYuQVBQSVVNX1RNUF9ESVIgPSBwcmVSb290RGlyUGF0aDtcblxuICAgIGNvbnN0IHJlcyA9IGF3YWl0IHRlbXBEaXIub3BlbkRpcigpO1xuICAgIHJlcy5zaG91bGQuYmUuYSgnc3RyaW5nJyk7XG4gICAgYXdhaXQgZnMuZXhpc3RzKHJlcykuc2hvdWxkLmV2ZW50dWFsbHkuYmUub2s7XG4gICAgY29uc3QgcmVzMiA9IGF3YWl0IHRlbXBEaXIub3BlbkRpcigpO1xuICAgIGF3YWl0IGZzLmV4aXN0cyhyZXMyKS5zaG91bGQuZXZlbnR1YWxseS5iZS5vaztcbiAgICByZXMuc2hvdWxkLmluY2x1ZGUocHJlUm9vdERpclBhdGgpO1xuICAgIHJlczIuc2hvdWxkLmluY2x1ZGUocHJlUm9vdERpclBhdGgpO1xuICAgIHJlcy5zaG91bGQubm90LmVxdWFsKHJlczIpO1xuICB9KTtcblxuICBpdCgnc2hvdWxkIGdlbmVyYXRlIG9uZSB0ZW1wIGRpciB1c2VkIGZvciB0aGUgbGlmZSBvZiB0aGUgcHJvY2VzcycsIGFzeW5jIGZ1bmN0aW9uICgpIHtcbiAgICBsZXQgcmVzID0gYXdhaXQgdGVtcERpci5zdGF0aWNEaXIoKTtcbiAgICByZXMuc2hvdWxkLmJlLmEoJ3N0cmluZycpO1xuICAgIGF3YWl0IGZzLmV4aXN0cyhyZXMpLnNob3VsZC5ldmVudHVhbGx5LmJlLm9rO1xuICAgIGxldCByZXMyID0gYXdhaXQgdGVtcERpci5zdGF0aWNEaXIoKTtcbiAgICBhd2FpdCBmcy5leGlzdHMocmVzMikuc2hvdWxkLmV2ZW50dWFsbHkuYmUub2s7XG4gICAgcmVzLnNob3VsZC5lcXVhbChyZXMyKTtcbiAgfSk7XG59KTtcbiJdLCJmaWxlIjoidGVzdC90ZW1wZGlyLXNwZWNzLmpzIiwic291cmNlUm9vdCI6Ii4uLy4uIn0=
|