@mablhq/mabl-cli 1.25.1 → 1.25.19

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/util/asyncUtil.js CHANGED
@@ -2,9 +2,9 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.filterAsync = exports.mapAsync = exports.TimeoutError = exports.promiseWithTimeout = void 0;
4
4
  const loggingProvider_1 = require("../providers/logging/loggingProvider");
5
- async function promiseWithTimeout(promise, timeoutMillis, description) {
5
+ async function promiseWithTimeout(promise, timeoutMillis, description, timeoutType = 'mabl promise timeout') {
6
6
  const startTimeMillis = new Date().getTime();
7
- const { timer, cancelTimer } = startTimer(timeoutMillis, description);
7
+ const { timer, cancelTimer } = startTimer(timeoutMillis, description, timeoutType);
8
8
  try {
9
9
  const result = await Promise.race([timer, promise]);
10
10
  if (loggingProvider_1.logger.isDebugEnabled()) {
@@ -24,18 +24,19 @@ async function promiseWithTimeout(promise, timeoutMillis, description) {
24
24
  }
25
25
  exports.promiseWithTimeout = promiseWithTimeout;
26
26
  class TimeoutError extends Error {
27
- constructor(timeoutMillis, description) {
28
- super(`[mabl promise timeout] "${description}" timed out after ${timeoutMillis}ms`);
27
+ constructor(timeoutMillis, description, timeoutType) {
28
+ super(`[${timeoutType}] "${description}" timed out after ${timeoutMillis}ms`);
29
29
  this.timeoutMillis = timeoutMillis;
30
30
  this.description = description;
31
+ this.timeoutType = timeoutType;
31
32
  Object.setPrototypeOf(this, TimeoutError.prototype);
32
33
  }
33
34
  }
34
35
  exports.TimeoutError = TimeoutError;
35
- const startTimer = (timeoutMillis, description) => {
36
+ const startTimer = (timeoutMillis, description, timeoutType) => {
36
37
  let timeout;
37
38
  const promise = new Promise((_resolve, reject) => {
38
- timeout = global.setTimeout(() => reject(new TimeoutError(timeoutMillis, description)), timeoutMillis);
39
+ timeout = global.setTimeout(() => reject(new TimeoutError(timeoutMillis, description, timeoutType)), timeoutMillis);
39
40
  timeout.unref();
40
41
  });
41
42
  return {
@@ -2,11 +2,9 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.summaryToElapsedTime = exports.journeyRunToElapsedTime = exports.maybeCapitalize = exports.humanizedMablStatusToGithubIcon = exports.humanizeMablStatus = exports.formatResultsAsGithubMarkdown = void 0;
4
4
  const change_case_1 = require("change-case");
5
- const moment = require("moment");
6
5
  const mablApi_1 = require("../mablApi");
6
+ const timeUtil_1 = require("./timeUtil");
7
7
  const table = require('markdown-table');
8
- const momentDurationFormatSetup = require('moment-duration-format');
9
- momentDurationFormatSetup(moment);
10
8
  var HumanizedMablStatuses;
11
9
  (function (HumanizedMablStatuses) {
12
10
  HumanizedMablStatuses["Failed"] = "Failed";
@@ -115,26 +113,10 @@ function maybeCapitalize(input) {
115
113
  }
116
114
  exports.maybeCapitalize = maybeCapitalize;
117
115
  function journeyRunToElapsedTime(journeyRun) {
118
- let elapsedTimeString = '--:--:--';
119
- const startTime = journeyRun.start_time;
120
- const stopTime = journeyRun.stop_time;
121
- if (startTime && stopTime) {
122
- elapsedTimeString = moment
123
- .duration(stopTime - startTime, 'ms')
124
- .format('hh:mm:ss', { trim: false });
125
- }
126
- return elapsedTimeString;
116
+ return (0, timeUtil_1.elapsedTimeToString)(journeyRun.start_time, journeyRun.stop_time);
127
117
  }
128
118
  exports.journeyRunToElapsedTime = journeyRunToElapsedTime;
129
119
  function summaryToElapsedTime(summary) {
130
- let elapsedTimeString = '--:--:--';
131
- const startTime = summary.start_time;
132
- const stopTime = summary.stop_time;
133
- if (startTime && stopTime) {
134
- elapsedTimeString = moment
135
- .duration(stopTime - startTime, 'ms')
136
- .format('hh:mm:ss', { trim: false });
137
- }
138
- return elapsedTimeString;
120
+ return (0, timeUtil_1.elapsedTimeToString)(summary.start_time, summary.stop_time);
139
121
  }
140
122
  exports.summaryToElapsedTime = summaryToElapsedTime;
@@ -0,0 +1,31 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.elapsedTimeDurationToString = exports.elapsedTimeToString = void 0;
4
+ function elapsedTimeToString(startTimeInMillis, stopTimeInMillis) {
5
+ if (startTimeInMillis && stopTimeInMillis) {
6
+ return elapsedTimeDurationToString(stopTimeInMillis - startTimeInMillis);
7
+ }
8
+ return elapsedTimeDurationToString(undefined);
9
+ }
10
+ exports.elapsedTimeToString = elapsedTimeToString;
11
+ function elapsedTimeDurationToString(elapsedTimeInMillis) {
12
+ let elapsedTimeString = '--:--:--';
13
+ if (elapsedTimeInMillis !== undefined) {
14
+ if (elapsedTimeInMillis < 0) {
15
+ elapsedTimeString =
16
+ '-' + elapsedTimeDurationToString(elapsedTimeInMillis * -1);
17
+ }
18
+ else {
19
+ const diffInSeconds = Math.round(elapsedTimeInMillis / 1000);
20
+ const seconds = diffInSeconds % 60;
21
+ const minutes = Math.floor(diffInSeconds / 60) % 60;
22
+ const hours = Math.floor(diffInSeconds / (60 * 60));
23
+ elapsedTimeString = `${pad(hours)}:${pad(minutes)}:${pad(seconds)}`;
24
+ }
25
+ }
26
+ return elapsedTimeString;
27
+ }
28
+ exports.elapsedTimeDurationToString = elapsedTimeDurationToString;
29
+ function pad(input) {
30
+ return input.toString().padStart(2, '0');
31
+ }