UNPKG

4.67 kBJavaScriptView Raw
1"use strict";
2Object.defineProperty(exports, "__esModule", { value: true });
3const index_1 = require("../index");
4const ava_1 = require("ava");
5const shared_1 = require("../src/shared");
6(0, ava_1.default)(`FunctionStats clone`, t => {
7 const stats = new index_1.FunctionStats();
8 stats.executionTime.update(100);
9 stats.estimatedBilledTime.update(101);
10 stats.localStartLatency.update(102);
11 stats.remoteStartLatency.update(103);
12 stats.returnLatency.update(104);
13 stats.sendResponseLatency.update(105);
14 stats.completed = 10;
15 stats.errors = 1;
16 stats.invocations = 11;
17 stats.retries = 2;
18 const cloned = stats.clone();
19 t.deepEqual(cloned, stats);
20 for (const key of (0, shared_1.keysOf)(cloned)) {
21 if (typeof cloned[key] !== "number") {
22 t.true(cloned[key] !== stats[key]);
23 }
24 }
25 t.is(cloned.toString(), stats.toString());
26 cloned.executionTime.update(0);
27 t.notDeepEqual(cloned, stats);
28 t.notDeepEqual(cloned.executionTime, stats.executionTime);
29 t.true(cloned.toString() !== stats.toString());
30 cloned.completed++;
31 t.true(cloned.completed !== stats.completed);
32});
33//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidW5pdC1wcm92aWRlci50ZXN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vdGVzdC91bml0LXByb3ZpZGVyLnRlc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxvQ0FBeUM7QUFDekMsNkJBQXVCO0FBQ3ZCLDBDQUF1QztBQUV2QyxJQUFBLGFBQUksRUFBQyxxQkFBcUIsRUFBRSxDQUFDLENBQUMsRUFBRTtJQUM1QixNQUFNLEtBQUssR0FBRyxJQUFJLHFCQUFhLEVBQUUsQ0FBQztJQUVsQyxLQUFLLENBQUMsYUFBYSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUNoQyxLQUFLLENBQUMsbUJBQW1CLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ3RDLEtBQUssQ0FBQyxpQkFBaUIsQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDcEMsS0FBSyxDQUFDLGtCQUFrQixDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUNyQyxLQUFLLENBQUMsYUFBYSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUNoQyxLQUFLLENBQUMsbUJBQW1CLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ3RDLEtBQUssQ0FBQyxTQUFTLEdBQUcsRUFBRSxDQUFDO0lBQ3JCLEtBQUssQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDO0lBQ2pCLEtBQUssQ0FBQyxXQUFXLEdBQUcsRUFBRSxDQUFDO0lBQ3ZCLEtBQUssQ0FBQyxPQUFPLEdBQUcsQ0FBQyxDQUFDO0lBRWxCLE1BQU0sTUFBTSxHQUFHLEtBQUssQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUM3QixDQUFDLENBQUMsU0FBUyxDQUFDLE1BQU0sRUFBRSxLQUFLLENBQUMsQ0FBQztJQUMzQixLQUFLLE1BQU0sR0FBRyxJQUFJLElBQUEsZUFBTSxFQUFDLE1BQU0sQ0FBQyxFQUFFO1FBQzlCLElBQUksT0FBTyxNQUFNLENBQUMsR0FBRyxDQUFDLEtBQUssUUFBUSxFQUFFO1lBQ2pDLENBQUMsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxLQUFLLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO1NBQ3RDO0tBQ0o7SUFDRCxDQUFDLENBQUMsRUFBRSxDQUFDLE1BQU0sQ0FBQyxRQUFRLEVBQUUsRUFBRSxLQUFLLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQztJQUUxQyxNQUFNLENBQUMsYUFBYSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUMvQixDQUFDLENBQUMsWUFBWSxDQUFDLE1BQU0sRUFBRSxLQUFLLENBQUMsQ0FBQztJQUM5QixDQUFDLENBQUMsWUFBWSxDQUFDLE1BQU0sQ0FBQyxhQUFhLEVBQUUsS0FBSyxDQUFDLGFBQWEsQ0FBQyxDQUFDO0lBQzFELENBQUMsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsRUFBRSxLQUFLLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQyxDQUFDO0lBQy9DLE1BQU0sQ0FBQyxTQUFTLEVBQUUsQ0FBQztJQUNuQixDQUFDLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxTQUFTLEtBQUssS0FBSyxDQUFDLFNBQVMsQ0FBQyxDQUFDO0FBQ2pELENBQUMsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRnVuY3Rpb25TdGF0cyB9IGZyb20gXCIuLi9pbmRleFwiO1xuaW1wb3J0IHRlc3QgZnJvbSBcImF2YVwiO1xuaW1wb3J0IHsga2V5c09mIH0gZnJvbSBcIi4uL3NyYy9zaGFyZWRcIjtcblxudGVzdChgRnVuY3Rpb25TdGF0cyBjbG9uZWAsIHQgPT4ge1xuICAgIGNvbnN0IHN0YXRzID0gbmV3IEZ1bmN0aW9uU3RhdHMoKTtcblxuICAgIHN0YXRzLmV4ZWN1dGlvblRpbWUudXBkYXRlKDEwMCk7XG4gICAgc3RhdHMuZXN0aW1hdGVkQmlsbGVkVGltZS51cGRhdGUoMTAxKTtcbiAgICBzdGF0cy5sb2NhbFN0YXJ0TGF0ZW5jeS51cGRhdGUoMTAyKTtcbiAgICBzdGF0cy5yZW1vdGVTdGFydExhdGVuY3kudXBkYXRlKDEwMyk7XG4gICAgc3RhdHMucmV0dXJuTGF0ZW5jeS51cGRhdGUoMTA0KTtcbiAgICBzdGF0cy5zZW5kUmVzcG9uc2VMYXRlbmN5LnVwZGF0ZSgxMDUpO1xuICAgIHN0YXRzLmNvbXBsZXRlZCA9IDEwO1xuICAgIHN0YXRzLmVycm9ycyA9IDE7XG4gICAgc3RhdHMuaW52b2NhdGlvbnMgPSAxMTtcbiAgICBzdGF0cy5yZXRyaWVzID0gMjtcblxuICAgIGNvbnN0IGNsb25lZCA9IHN0YXRzLmNsb25lKCk7XG4gICAgdC5kZWVwRXF1YWwoY2xvbmVkLCBzdGF0cyk7XG4gICAgZm9yIChjb25zdCBrZXkgb2Yga2V5c09mKGNsb25lZCkpIHtcbiAgICAgICAgaWYgKHR5cGVvZiBjbG9uZWRba2V5XSAhPT0gXCJudW1iZXJcIikge1xuICAgICAgICAgICAgdC50cnVlKGNsb25lZFtrZXldICE9PSBzdGF0c1trZXldKTtcbiAgICAgICAgfVxuICAgIH1cbiAgICB0LmlzKGNsb25lZC50b1N0cmluZygpLCBzdGF0cy50b1N0cmluZygpKTtcblxuICAgIGNsb25lZC5leGVjdXRpb25UaW1lLnVwZGF0ZSgwKTtcbiAgICB0Lm5vdERlZXBFcXVhbChjbG9uZWQsIHN0YXRzKTtcbiAgICB0Lm5vdERlZXBFcXVhbChjbG9uZWQuZXhlY3V0aW9uVGltZSwgc3RhdHMuZXhlY3V0aW9uVGltZSk7XG4gICAgdC50cnVlKGNsb25lZC50b1N0cmluZygpICE9PSBzdGF0cy50b1N0cmluZygpKTtcbiAgICBjbG9uZWQuY29tcGxldGVkKys7XG4gICAgdC50cnVlKGNsb25lZC5jb21wbGV0ZWQgIT09IHN0YXRzLmNvbXBsZXRlZCk7XG59KTtcbiJdfQ==
\No newline at end of file