@alwaysmeticulous/downloading-helpers 2.248.2 → 2.248.5
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.
|
@@ -5,9 +5,9 @@ import { MeticulousClient } from "@alwaysmeticulous/client";
|
|
|
5
5
|
* - `everything`: Download all available test run data
|
|
6
6
|
* - `coverageByReplayPrOnly`: Download only coverageByReplayPr
|
|
7
7
|
*/
|
|
8
|
-
export declare const DOWNLOAD_SCOPES: readonly ["everything", "coverage-by-replay-pr-only", "coverage-only"];
|
|
8
|
+
export declare const DOWNLOAD_SCOPES: readonly ["everything", "coverage-by-replay-pr-only", "coverage-only", "coverage-pr-only"];
|
|
9
9
|
export type TestRunDownloadScope = (typeof DOWNLOAD_SCOPES)[number];
|
|
10
|
-
export declare const getOrFetchTestRunData: (client: MeticulousClient, testRunId: string, downloadScope?: TestRunDownloadScope) => Promise<{
|
|
10
|
+
export declare const getOrFetchTestRunData: (client: MeticulousClient, testRunId: string, downloadScope?: TestRunDownloadScope, humanReadable?: boolean) => Promise<{
|
|
11
11
|
fileName: string;
|
|
12
12
|
data: TestRunDataLocations;
|
|
13
13
|
}>;
|
|
@@ -16,17 +16,19 @@ exports.DOWNLOAD_SCOPES = [
|
|
|
16
16
|
"everything",
|
|
17
17
|
"coverage-by-replay-pr-only",
|
|
18
18
|
"coverage-only",
|
|
19
|
+
"coverage-pr-only",
|
|
19
20
|
];
|
|
20
21
|
const DOWNLOAD_SCOPE_TO_FILES_TO_DOWNLOAD = {
|
|
21
22
|
everything: /.*/,
|
|
22
23
|
"coverage-by-replay-pr-only": /^coverageByReplayPr/,
|
|
23
24
|
"coverage-only": /^coverage$/,
|
|
25
|
+
"coverage-pr-only": /^coveragePr/
|
|
24
26
|
};
|
|
25
27
|
const shouldDownloadFile = (fileType, downloadScope) => {
|
|
26
28
|
return DOWNLOAD_SCOPE_TO_FILES_TO_DOWNLOAD[downloadScope].test(fileType);
|
|
27
29
|
};
|
|
28
30
|
const TEST_RUN_PREVIOUSLY_DOWNLOADED_FILE_NAME = "previously-downloaded.txt";
|
|
29
|
-
const getOrFetchTestRunData = async (client, testRunId, downloadScope = "everything") => {
|
|
31
|
+
const getOrFetchTestRunData = async (client, testRunId, downloadScope = "everything", humanReadable = true) => {
|
|
30
32
|
const logger = (0, common_1.initLogger)();
|
|
31
33
|
const testRunDir = (0, path_1.join)((0, common_1.getMeticulousLocalDataDir)(), "test-runs", testRunId === "latest"
|
|
32
34
|
? `latest_${Date.now()}`
|
|
@@ -79,13 +81,14 @@ const getOrFetchTestRunData = async (client, testRunId, downloadScope = "everyth
|
|
|
79
81
|
if (typeof url !== "string" || typeof filePath !== "string") {
|
|
80
82
|
return null;
|
|
81
83
|
}
|
|
84
|
+
const targetFilePath = (0, path_1.join)(testRunDir, filePath);
|
|
82
85
|
return async () => {
|
|
83
86
|
logger.info(`Downloading and extracting ${fileType}...`);
|
|
84
|
-
await (0, download_file_1.downloadAndExtractFile)(location.signedUrl,
|
|
85
|
-
if (
|
|
86
|
-
const fileContents = await (0, promises_1.readFile)(
|
|
87
|
+
await (0, download_file_1.downloadAndExtractFile)(location.signedUrl, targetFilePath, testRunDir);
|
|
88
|
+
if (humanReadable && targetFilePath.endsWith(".json")) {
|
|
89
|
+
const fileContents = await (0, promises_1.readFile)(targetFilePath, "utf-8");
|
|
87
90
|
const json = JSON.parse(fileContents);
|
|
88
|
-
await (0, promises_1.writeFile)(
|
|
91
|
+
await (0, promises_1.writeFile)(targetFilePath, JSON.stringify(json, null, 2), "utf-8");
|
|
89
92
|
}
|
|
90
93
|
};
|
|
91
94
|
})
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"test-runs.js","sourceRoot":"","sources":["../../src/file-downloads/test-runs.ts"],"names":[],"mappings":";;;AAAA,0CAAyD;AACzD,+BAA4B;AAE5B,qDAA4E;AAC5E,qDAGkC;AAClC,mDAAyD;AACzD,yDAI4B;AAE5B;;;;GAIG;AACU,QAAA,eAAe,GAAG;IAC7B,YAAY;IACZ,4BAA4B;IAC5B,eAAe;
|
|
1
|
+
{"version":3,"file":"test-runs.js","sourceRoot":"","sources":["../../src/file-downloads/test-runs.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@alwaysmeticulous/downloading-helpers",
|
|
3
|
-
"version": "2.248.
|
|
3
|
+
"version": "2.248.5",
|
|
4
4
|
"description": "Helper utilities for downloading files & scripts required to execute replays",
|
|
5
5
|
"license": "ISC",
|
|
6
6
|
"main": "dist/index.js",
|
|
@@ -54,5 +54,5 @@
|
|
|
54
54
|
"jest": {
|
|
55
55
|
"preset": "../../jest.config.js"
|
|
56
56
|
},
|
|
57
|
-
"gitHead": "
|
|
57
|
+
"gitHead": "9e86024189093a88a71e7ab226d424d86a0cdfa6"
|
|
58
58
|
}
|