@lage-run/hasher 0.1.1

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.
Files changed (73) hide show
  1. package/.eslintignore +2 -0
  2. package/CHANGELOG.json +20 -0
  3. package/CHANGELOG.md +13 -0
  4. package/README.md +2 -0
  5. package/jest.config.js +1 -0
  6. package/lib/__fixtures__/config/backfill.config.d.ts +1 -0
  7. package/lib/__fixtures__/config/backfill.config.js +5 -0
  8. package/lib/__fixtures__/config/backfill.config.js.map +1 -0
  9. package/lib/__fixtures__/config/packages/package-1/backfill.config.d.ts +0 -0
  10. package/lib/__fixtures__/config/packages/package-1/backfill.config.js +2 -0
  11. package/lib/__fixtures__/config/packages/package-1/backfill.config.js.map +1 -0
  12. package/lib/__tests__/createPackageHashes.test.d.ts +1 -0
  13. package/lib/__tests__/createPackageHashes.test.js +43 -0
  14. package/lib/__tests__/createPackageHashes.test.js.map +1 -0
  15. package/lib/__tests__/getPackageDeps.test.d.ts +1 -0
  16. package/lib/__tests__/getPackageDeps.test.js +287 -0
  17. package/lib/__tests__/getPackageDeps.test.js.map +1 -0
  18. package/lib/__tests__/getRepoDeps.test.d.ts +1 -0
  19. package/lib/__tests__/getRepoDeps.test.js +238 -0
  20. package/lib/__tests__/getRepoDeps.test.js.map +1 -0
  21. package/lib/__tests__/getRepoState.test.d.ts +1 -0
  22. package/lib/__tests__/getRepoState.test.js +67 -0
  23. package/lib/__tests__/getRepoState.test.js.map +1 -0
  24. package/lib/__tests__/hashOfFiles.test.d.ts +1 -0
  25. package/lib/__tests__/hashOfFiles.test.js +100 -0
  26. package/lib/__tests__/hashOfFiles.test.js.map +1 -0
  27. package/lib/__tests__/helpers.test.d.ts +1 -0
  28. package/lib/__tests__/helpers.test.js +27 -0
  29. package/lib/__tests__/helpers.test.js.map +1 -0
  30. package/lib/__tests__/index.test.d.ts +1 -0
  31. package/lib/__tests__/index.test.js +87 -0
  32. package/lib/__tests__/index.test.js.map +1 -0
  33. package/lib/__tests__/resolveDependenciesHelper.d.ts +3 -0
  34. package/lib/__tests__/resolveDependenciesHelper.js +41 -0
  35. package/lib/__tests__/resolveDependenciesHelper.js.map +1 -0
  36. package/lib/__tests__/resolveExternalDependencies.test.d.ts +1 -0
  37. package/lib/__tests__/resolveExternalDependencies.test.js +108 -0
  38. package/lib/__tests__/resolveExternalDependencies.test.js.map +1 -0
  39. package/lib/__tests__/resolveInternalDependencies.test.d.ts +1 -0
  40. package/lib/__tests__/resolveInternalDependencies.test.js +100 -0
  41. package/lib/__tests__/resolveInternalDependencies.test.js.map +1 -0
  42. package/lib/createPackageHashes.d.ts +4 -0
  43. package/lib/createPackageHashes.js +41 -0
  44. package/lib/createPackageHashes.js.map +1 -0
  45. package/lib/getPackageDeps.d.ts +45 -0
  46. package/lib/getPackageDeps.js +254 -0
  47. package/lib/getPackageDeps.js.map +1 -0
  48. package/lib/getRepoState.d.ts +76 -0
  49. package/lib/getRepoState.js +271 -0
  50. package/lib/getRepoState.js.map +1 -0
  51. package/lib/hashOfFiles.d.ts +14 -0
  52. package/lib/hashOfFiles.js +65 -0
  53. package/lib/hashOfFiles.js.map +1 -0
  54. package/lib/hashOfPackage.d.ts +9 -0
  55. package/lib/hashOfPackage.js +52 -0
  56. package/lib/hashOfPackage.js.map +1 -0
  57. package/lib/helpers.d.ts +3 -0
  58. package/lib/helpers.js +31 -0
  59. package/lib/helpers.js.map +1 -0
  60. package/lib/index.d.ts +13 -0
  61. package/lib/index.js +66 -0
  62. package/lib/index.js.map +1 -0
  63. package/lib/repoInfo.d.ts +26 -0
  64. package/lib/repoInfo.js +68 -0
  65. package/lib/repoInfo.js.map +1 -0
  66. package/lib/resolveExternalDependencies.d.ts +11 -0
  67. package/lib/resolveExternalDependencies.js +59 -0
  68. package/lib/resolveExternalDependencies.js.map +1 -0
  69. package/lib/resolveInternalDependencies.d.ts +6 -0
  70. package/lib/resolveInternalDependencies.js +15 -0
  71. package/lib/resolveInternalDependencies.js.map +1 -0
  72. package/package.json +30 -0
  73. package/tsconfig.json +7 -0
package/.eslintignore ADDED
@@ -0,0 +1,2 @@
1
+ src/__fixtures__
2
+ src/__tests__
package/CHANGELOG.json ADDED
@@ -0,0 +1,20 @@
1
+ {
2
+ "name": "@lage-run/hasher",
3
+ "entries": [
4
+ {
5
+ "date": "Wed, 02 Nov 2022 06:27:16 GMT",
6
+ "tag": "@lage-run/hasher_v0.1.1",
7
+ "version": "0.1.1",
8
+ "comments": {
9
+ "patch": [
10
+ {
11
+ "author": "ken@gizzar.com",
12
+ "package": "@lage-run/hasher",
13
+ "commit": "ffb4fc2cebf1800b4b5d2a353a0d109c17f21dde",
14
+ "comment": "adds a hasher package that has very few deps"
15
+ }
16
+ ]
17
+ }
18
+ }
19
+ ]
20
+ }
package/CHANGELOG.md ADDED
@@ -0,0 +1,13 @@
1
+ # Change Log - @lage-run/hasher
2
+
3
+ This log was last generated on Wed, 02 Nov 2022 06:27:16 GMT and should not be manually modified.
4
+
5
+ <!-- Start content -->
6
+
7
+ ## 0.1.1
8
+
9
+ Wed, 02 Nov 2022 06:27:16 GMT
10
+
11
+ ### Patches
12
+
13
+ - adds a hasher package that has very few deps (ken@gizzar.com)
package/README.md ADDED
@@ -0,0 +1,2 @@
1
+ # @lage-run/hasher
2
+ This package takes code from both backfill-hasher & package-dep-hash and strips out the extraneous dependencies: backfill-logger and @rushstack/node-core-lib. This is done so that `lage` can become a pure ES Module package. It also allows us to control how the hashing works should lage gains the ability to customize the `inputs` in the future.
package/jest.config.js ADDED
@@ -0,0 +1 @@
1
+ module.exports = require("monorepo-scripts/config/jest.config.js");
@@ -0,0 +1 @@
1
+ export const internalCacheFolder: string;
@@ -0,0 +1,5 @@
1
+ "use strict";
2
+ module.exports = {
3
+ internalCacheFolder: "foo",
4
+ };
5
+ //# sourceMappingURL=backfill.config.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"backfill.config.js","sourceRoot":"","sources":["../../../src/__fixtures__/config/backfill.config.js"],"names":[],"mappings":";AAAA,MAAM,CAAC,OAAO,GAAG;IACf,mBAAmB,EAAE,KAAK;CAC3B,CAAC"}
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ //# sourceMappingURL=backfill.config.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"backfill.config.js","sourceRoot":"","sources":["../../../../../src/__fixtures__/config/packages/package-1/backfill.config.js"],"names":[],"mappings":""}
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,43 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const createPackageHashes_1 = require("../createPackageHashes");
4
+ describe("createPackageHashes", () => {
5
+ it("creates packages hashes for repo hashes", () => {
6
+ const packageHashes = (0, createPackageHashes_1.createPackageHashes)("/repo", [
7
+ {
8
+ path: "/repo/packages/package-a",
9
+ name: "package-a",
10
+ packageJson: {
11
+ name: "package-a",
12
+ packageJsonPath: "/packages/package-a/package.json",
13
+ version: "1.0.0",
14
+ },
15
+ },
16
+ {
17
+ path: "/repo/packages/package-b",
18
+ name: "package-b",
19
+ packageJson: {
20
+ name: "package-b",
21
+ packageJsonPath: "/packages/package-b/package.json",
22
+ version: "1.0.0",
23
+ },
24
+ },
25
+ ], {
26
+ "packages/package-a/foo.ts": "hash-a-foo.ts",
27
+ "packages/package-a/package.json": "hash-a-package.json",
28
+ "packages/package-b/1.ts": "hash-b-1.ts",
29
+ "packages/package-b/2.ts": "hash-b-2.ts",
30
+ "packages/package-b/3.ts": "hash-b-3.ts",
31
+ });
32
+ expect(packageHashes["packages/package-a"].length).toEqual(2);
33
+ // packageHashes["packageName"] is an array of tuples of the form [filePath, hash]
34
+ expect(packageHashes["packages/package-a"][0][1]).toEqual("hash-a-foo.ts");
35
+ expect(packageHashes["packages/package-a"][1][1]).toEqual("hash-a-package.json");
36
+ expect(packageHashes["packages/package-b"].length).toEqual(3);
37
+ // packageHashes["packageName"] is an array of tuples of the form [filePath, hash]
38
+ expect(packageHashes["packages/package-b"][0][1]).toEqual("hash-b-1.ts");
39
+ expect(packageHashes["packages/package-b"][1][1]).toEqual("hash-b-2.ts");
40
+ expect(packageHashes["packages/package-b"][2][1]).toEqual("hash-b-3.ts");
41
+ });
42
+ });
43
+ //# sourceMappingURL=createPackageHashes.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createPackageHashes.test.js","sourceRoot":"","sources":["../../src/__tests__/createPackageHashes.test.ts"],"names":[],"mappings":";;AAAA,gEAA6D;AAE7D,QAAQ,CAAC,qBAAqB,EAAE,GAAG,EAAE;IACnC,EAAE,CAAC,yCAAyC,EAAE,GAAG,EAAE;QACjD,MAAM,aAAa,GAAG,IAAA,yCAAmB,EACvC,OAAO,EACP;YACE;gBACE,IAAI,EAAE,0BAA0B;gBAChC,IAAI,EAAE,WAAW;gBACjB,WAAW,EAAE;oBACX,IAAI,EAAE,WAAW;oBACjB,eAAe,EAAE,kCAAkC;oBACnD,OAAO,EAAE,OAAO;iBACjB;aACF;YACD;gBACE,IAAI,EAAE,0BAA0B;gBAChC,IAAI,EAAE,WAAW;gBACjB,WAAW,EAAE;oBACX,IAAI,EAAE,WAAW;oBACjB,eAAe,EAAE,kCAAkC;oBACnD,OAAO,EAAE,OAAO;iBACjB;aACF;SACF,EACD;YACE,2BAA2B,EAAE,eAAe;YAC5C,iCAAiC,EAAE,qBAAqB;YACxD,yBAAyB,EAAE,aAAa;YACxC,yBAAyB,EAAE,aAAa;YACxC,yBAAyB,EAAE,aAAa;SACzC,CACF,CAAC;QACF,MAAM,CAAC,aAAa,CAAC,oBAAoB,CAAC,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QAE9D,kFAAkF;QAClF,MAAM,CAAC,aAAa,CAAC,oBAAoB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC;QAC3E,MAAM,CAAC,aAAa,CAAC,oBAAoB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,qBAAqB,CAAC,CAAC;QAEjF,MAAM,CAAC,aAAa,CAAC,oBAAoB,CAAC,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QAE9D,kFAAkF;QAClF,MAAM,CAAC,aAAa,CAAC,oBAAoB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;QACzE,MAAM,CAAC,aAAa,CAAC,oBAAoB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;QACzE,MAAM,CAAC,aAAa,CAAC,oBAAoB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;IAC3E,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,287 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
25
+ Object.defineProperty(exports, "__esModule", { value: true });
26
+ const path = __importStar(require("path"));
27
+ const fs = __importStar(require("fs"));
28
+ const child_process_1 = require("child_process");
29
+ const getPackageDeps_1 = require("../getPackageDeps");
30
+ const SOURCE_PATH = path.join(__dirname).replace(path.join("lib", "__tests__"), path.join("src", "__tests__"));
31
+ const TEST_PROJECT_PATH = path.join(SOURCE_PATH, "testProject");
32
+ const NESTED_TEST_PROJECT_PATH = path.join(SOURCE_PATH, "nestedTestProject");
33
+ const FileSystem = {
34
+ writeFile: fs.writeFileSync,
35
+ deleteFile: fs.rmSync,
36
+ };
37
+ describe(getPackageDeps_1.parseGitFilename.name, () => {
38
+ it("can parse backslash-escaped filenames", () => {
39
+ expect((0, getPackageDeps_1.parseGitFilename)("some/path/to/a/file name")).toEqual("some/path/to/a/file name");
40
+ expect((0, getPackageDeps_1.parseGitFilename)('"some/path/to/a/file?name"')).toEqual("some/path/to/a/file?name");
41
+ expect((0, getPackageDeps_1.parseGitFilename)('"some/path/to/a/file\\\\name"')).toEqual("some/path/to/a/file\\name");
42
+ expect((0, getPackageDeps_1.parseGitFilename)('"some/path/to/a/file\\"name"')).toEqual('some/path/to/a/file"name');
43
+ expect((0, getPackageDeps_1.parseGitFilename)('"some/path/to/a/file\\"name"')).toEqual('some/path/to/a/file"name');
44
+ expect((0, getPackageDeps_1.parseGitFilename)('"some/path/to/a/file\\347\\275\\221\\347\\275\\221name"')).toEqual("some/path/to/a/file网网name");
45
+ expect((0, getPackageDeps_1.parseGitFilename)('"some/path/to/a/file\\\\347\\\\\\347\\275\\221name"')).toEqual("some/path/to/a/file\\347\\网name");
46
+ expect((0, getPackageDeps_1.parseGitFilename)('"some/path/to/a/file\\\\\\347\\275\\221\\347\\275\\221name"')).toEqual("some/path/to/a/file\\网网name");
47
+ });
48
+ });
49
+ describe(getPackageDeps_1.parseGitLsTree.name, () => {
50
+ it("can handle a blob", () => {
51
+ const filename = "src/typings/tsd.d.ts";
52
+ const hash = "3451bccdc831cb43d7a70ed8e628dcf9c7f888c8";
53
+ const output = `100644 blob ${hash}\t${filename}`;
54
+ const changes = (0, getPackageDeps_1.parseGitLsTree)(output);
55
+ expect(changes.size).toEqual(1); // Expect there to be exactly 1 change
56
+ expect(changes.get(filename)).toEqual(hash); // Expect the hash to be ${hash}
57
+ });
58
+ it("can handle a submodule", () => {
59
+ const filename = "rushstack";
60
+ const hash = "c5880bf5b0c6c1f2e2c43c95beeb8f0a808e8bac";
61
+ const output = `160000 commit ${hash}\t${filename}`;
62
+ const changes = (0, getPackageDeps_1.parseGitLsTree)(output);
63
+ expect(changes.size).toEqual(1); // Expect there to be exactly 1 change
64
+ expect(changes.get(filename)).toEqual(hash); // Expect the hash to be ${hash}
65
+ });
66
+ it("can handle multiple lines", () => {
67
+ const filename1 = "src/typings/tsd.d.ts";
68
+ const hash1 = "3451bccdc831cb43d7a70ed8e628dcf9c7f888c8";
69
+ const filename2 = "src/foo bar/tsd.d.ts";
70
+ const hash2 = "0123456789abcdef1234567890abcdef01234567";
71
+ const output = `100644 blob ${hash1}\t${filename1}\n100666 blob ${hash2}\t${filename2}`;
72
+ const changes = (0, getPackageDeps_1.parseGitLsTree)(output);
73
+ expect(changes.size).toEqual(2); // Expect there to be exactly 2 changes
74
+ expect(changes.get(filename1)).toEqual(hash1); // Expect the hash to be ${hash1}
75
+ expect(changes.get(filename2)).toEqual(hash2); // Expect the hash to be ${hash2}
76
+ });
77
+ it("throws with malformed input", () => {
78
+ expect(getPackageDeps_1.parseGitLsTree.bind(undefined, "some super malformed input")).toThrow();
79
+ });
80
+ });
81
+ describe(getPackageDeps_1.getPackageDeps.name, () => {
82
+ it("can parse committed file", () => {
83
+ const results = (0, getPackageDeps_1.getPackageDeps)(TEST_PROJECT_PATH);
84
+ const expectedFiles = {
85
+ "file1.txt": "c7b2f707ac99ca522f965210a7b6b0b109863f34",
86
+ "file 2.txt": "a385f754ec4fede884a4864d090064d9aeef8ccb",
87
+ "file蝴蝶.txt": "ae814af81e16cb2ae8c57503c77e2cab6b5462ba",
88
+ "package.json": "18a1e415e56220fa5122428a4ef8eb8874756576",
89
+ };
90
+ const filePaths = Array.from(results.keys()).sort();
91
+ filePaths.forEach((filePath) => expect(results.get(filePath)).toEqual(expectedFiles[filePath]));
92
+ });
93
+ it("can handle files in subfolders", () => {
94
+ const results = (0, getPackageDeps_1.getPackageDeps)(NESTED_TEST_PROJECT_PATH);
95
+ const expectedFiles = {
96
+ "src/file 1.txt": "c7b2f707ac99ca522f965210a7b6b0b109863f34",
97
+ "package.json": "18a1e415e56220fa5122428a4ef8eb8874756576",
98
+ };
99
+ const filePaths = Array.from(results.keys()).sort();
100
+ filePaths.forEach((filePath) => expect(results.get(filePath)).toEqual(expectedFiles[filePath]));
101
+ });
102
+ it("can handle adding one file", () => {
103
+ const tempFilePath = path.join(TEST_PROJECT_PATH, "a.txt");
104
+ FileSystem.writeFile(tempFilePath, "a");
105
+ const results = (0, getPackageDeps_1.getPackageDeps)(TEST_PROJECT_PATH);
106
+ try {
107
+ const expectedFiles = {
108
+ "a.txt": "2e65efe2a145dda7ee51d1741299f848e5bf752e",
109
+ "file1.txt": "c7b2f707ac99ca522f965210a7b6b0b109863f34",
110
+ "file 2.txt": "a385f754ec4fede884a4864d090064d9aeef8ccb",
111
+ "file蝴蝶.txt": "ae814af81e16cb2ae8c57503c77e2cab6b5462ba",
112
+ "package.json": "18a1e415e56220fa5122428a4ef8eb8874756576",
113
+ };
114
+ const filePaths = Array.from(results.keys()).sort();
115
+ filePaths.forEach((filePath) => expect(results.get(filePath)).toEqual(expectedFiles[filePath]));
116
+ }
117
+ finally {
118
+ FileSystem.deleteFile(tempFilePath);
119
+ }
120
+ });
121
+ it("can handle adding two files", () => {
122
+ const tempFilePath1 = path.join(TEST_PROJECT_PATH, "a.txt");
123
+ const tempFilePath2 = path.join(TEST_PROJECT_PATH, "b.txt");
124
+ FileSystem.writeFile(tempFilePath1, "a");
125
+ FileSystem.writeFile(tempFilePath2, "a");
126
+ const results = (0, getPackageDeps_1.getPackageDeps)(TEST_PROJECT_PATH);
127
+ try {
128
+ const expectedFiles = {
129
+ "a.txt": "2e65efe2a145dda7ee51d1741299f848e5bf752e",
130
+ "b.txt": "2e65efe2a145dda7ee51d1741299f848e5bf752e",
131
+ "file1.txt": "c7b2f707ac99ca522f965210a7b6b0b109863f34",
132
+ "file 2.txt": "a385f754ec4fede884a4864d090064d9aeef8ccb",
133
+ "file蝴蝶.txt": "ae814af81e16cb2ae8c57503c77e2cab6b5462ba",
134
+ "package.json": "18a1e415e56220fa5122428a4ef8eb8874756576",
135
+ };
136
+ const filePaths = Array.from(results.keys()).sort();
137
+ filePaths.forEach((filePath) => expect(results.get(filePath)).toEqual(expectedFiles[filePath]));
138
+ }
139
+ finally {
140
+ FileSystem.deleteFile(tempFilePath1);
141
+ FileSystem.deleteFile(tempFilePath2);
142
+ }
143
+ });
144
+ it("can handle removing one file", () => {
145
+ const testFilePath = path.join(TEST_PROJECT_PATH, "file1.txt");
146
+ FileSystem.deleteFile(testFilePath);
147
+ const results = (0, getPackageDeps_1.getPackageDeps)(TEST_PROJECT_PATH);
148
+ try {
149
+ const expectedFiles = {
150
+ "file 2.txt": "a385f754ec4fede884a4864d090064d9aeef8ccb",
151
+ "file蝴蝶.txt": "ae814af81e16cb2ae8c57503c77e2cab6b5462ba",
152
+ "package.json": "18a1e415e56220fa5122428a4ef8eb8874756576",
153
+ };
154
+ const filePaths = Array.from(results.keys()).sort();
155
+ filePaths.forEach((filePath) => expect(results.get(filePath)).toEqual(expectedFiles[filePath]));
156
+ }
157
+ finally {
158
+ (0, child_process_1.execSync)(`git checkout ${testFilePath}`, { stdio: "ignore" });
159
+ }
160
+ });
161
+ it("can handle changing one file", () => {
162
+ const testFilePath = path.join(TEST_PROJECT_PATH, "file1.txt");
163
+ FileSystem.writeFile(testFilePath, "abc");
164
+ const results = (0, getPackageDeps_1.getPackageDeps)(TEST_PROJECT_PATH);
165
+ try {
166
+ const expectedFiles = {
167
+ "file1.txt": "f2ba8f84ab5c1bce84a7b441cb1959cfc7093b7f",
168
+ "file 2.txt": "a385f754ec4fede884a4864d090064d9aeef8ccb",
169
+ "file蝴蝶.txt": "ae814af81e16cb2ae8c57503c77e2cab6b5462ba",
170
+ "package.json": "18a1e415e56220fa5122428a4ef8eb8874756576",
171
+ };
172
+ const filePaths = Array.from(results.keys()).sort();
173
+ filePaths.forEach((filePath) => expect(results.get(filePath)).toEqual(expectedFiles[filePath]));
174
+ }
175
+ finally {
176
+ (0, child_process_1.execSync)(`git checkout ${testFilePath}`, { stdio: "ignore" });
177
+ }
178
+ });
179
+ it("can exclude a committed file", () => {
180
+ const results = (0, getPackageDeps_1.getPackageDeps)(TEST_PROJECT_PATH, ["file1.txt", "file 2.txt", "file蝴蝶.txt"]);
181
+ const expectedFiles = {
182
+ "package.json": "18a1e415e56220fa5122428a4ef8eb8874756576",
183
+ };
184
+ const filePaths = Array.from(results.keys()).sort();
185
+ filePaths.forEach((filePath) => expect(results.get(filePath)).toEqual(expectedFiles[filePath]));
186
+ });
187
+ it("can exclude an added file", () => {
188
+ const tempFilePath = path.join(TEST_PROJECT_PATH, "a.txt");
189
+ FileSystem.writeFile(tempFilePath, "a");
190
+ const results = (0, getPackageDeps_1.getPackageDeps)(TEST_PROJECT_PATH, ["a.txt"]);
191
+ try {
192
+ const expectedFiles = {
193
+ "file1.txt": "c7b2f707ac99ca522f965210a7b6b0b109863f34",
194
+ "file 2.txt": "a385f754ec4fede884a4864d090064d9aeef8ccb",
195
+ "file蝴蝶.txt": "ae814af81e16cb2ae8c57503c77e2cab6b5462ba",
196
+ "package.json": "18a1e415e56220fa5122428a4ef8eb8874756576",
197
+ };
198
+ const filePaths = Array.from(results.keys()).sort();
199
+ expect(filePaths).toHaveLength(Object.keys(expectedFiles).length);
200
+ filePaths.forEach((filePath) => expect(results.get(filePath)).toEqual(expectedFiles[filePath]));
201
+ }
202
+ finally {
203
+ FileSystem.deleteFile(tempFilePath);
204
+ }
205
+ });
206
+ it("can handle a filename with spaces", () => {
207
+ const tempFilePath = path.join(TEST_PROJECT_PATH, "a file.txt");
208
+ FileSystem.writeFile(tempFilePath, "a");
209
+ const results = (0, getPackageDeps_1.getPackageDeps)(TEST_PROJECT_PATH);
210
+ try {
211
+ const expectedFiles = {
212
+ "file1.txt": "c7b2f707ac99ca522f965210a7b6b0b109863f34",
213
+ "file 2.txt": "a385f754ec4fede884a4864d090064d9aeef8ccb",
214
+ "file蝴蝶.txt": "ae814af81e16cb2ae8c57503c77e2cab6b5462ba",
215
+ "a file.txt": "2e65efe2a145dda7ee51d1741299f848e5bf752e",
216
+ "package.json": "18a1e415e56220fa5122428a4ef8eb8874756576",
217
+ };
218
+ const filePaths = Array.from(results.keys()).sort();
219
+ expect(filePaths).toHaveLength(Object.keys(expectedFiles).length);
220
+ filePaths.forEach((filePath) => expect(results.get(filePath)).toEqual(expectedFiles[filePath]));
221
+ }
222
+ finally {
223
+ FileSystem.deleteFile(tempFilePath);
224
+ }
225
+ });
226
+ it("can handle a filename with multiple spaces", () => {
227
+ const tempFilePath = path.join(TEST_PROJECT_PATH, "a file name.txt");
228
+ FileSystem.writeFile(tempFilePath, "a");
229
+ const results = (0, getPackageDeps_1.getPackageDeps)(TEST_PROJECT_PATH);
230
+ try {
231
+ const expectedFiles = {
232
+ "file1.txt": "c7b2f707ac99ca522f965210a7b6b0b109863f34",
233
+ "file 2.txt": "a385f754ec4fede884a4864d090064d9aeef8ccb",
234
+ "file蝴蝶.txt": "ae814af81e16cb2ae8c57503c77e2cab6b5462ba",
235
+ "a file name.txt": "2e65efe2a145dda7ee51d1741299f848e5bf752e",
236
+ "package.json": "18a1e415e56220fa5122428a4ef8eb8874756576",
237
+ };
238
+ const filePaths = Array.from(results.keys()).sort();
239
+ expect(filePaths).toHaveLength(Object.keys(expectedFiles).length);
240
+ filePaths.forEach((filePath) => expect(results.get(filePath)).toEqual(expectedFiles[filePath]));
241
+ }
242
+ finally {
243
+ FileSystem.deleteFile(tempFilePath);
244
+ }
245
+ });
246
+ it("can handle a filename with non-standard characters", () => {
247
+ const tempFilePath = path.join(TEST_PROJECT_PATH, "newFile批把.txt");
248
+ FileSystem.writeFile(tempFilePath, "a");
249
+ const results = (0, getPackageDeps_1.getPackageDeps)(TEST_PROJECT_PATH);
250
+ try {
251
+ const expectedFiles = {
252
+ "file1.txt": "c7b2f707ac99ca522f965210a7b6b0b109863f34",
253
+ "file 2.txt": "a385f754ec4fede884a4864d090064d9aeef8ccb",
254
+ "file蝴蝶.txt": "ae814af81e16cb2ae8c57503c77e2cab6b5462ba",
255
+ "newFile批把.txt": "2e65efe2a145dda7ee51d1741299f848e5bf752e",
256
+ "package.json": "18a1e415e56220fa5122428a4ef8eb8874756576",
257
+ };
258
+ const filePaths = Array.from(results.keys()).sort();
259
+ expect(filePaths).toHaveLength(Object.keys(expectedFiles).length);
260
+ filePaths.forEach((filePath) => expect(results.get(filePath)).toEqual(expectedFiles[filePath]));
261
+ }
262
+ finally {
263
+ FileSystem.deleteFile(tempFilePath);
264
+ }
265
+ });
266
+ it("can handle a filename with non-standard characters", () => {
267
+ const tempFilePath = path.join(TEST_PROJECT_PATH, "newFile批把.txt");
268
+ FileSystem.writeFile(tempFilePath, "a");
269
+ const results = (0, getPackageDeps_1.getPackageDeps)(TEST_PROJECT_PATH);
270
+ try {
271
+ const expectedFiles = {
272
+ "file1.txt": "c7b2f707ac99ca522f965210a7b6b0b109863f34",
273
+ "file 2.txt": "a385f754ec4fede884a4864d090064d9aeef8ccb",
274
+ "file蝴蝶.txt": "ae814af81e16cb2ae8c57503c77e2cab6b5462ba",
275
+ "newFile批把.txt": "2e65efe2a145dda7ee51d1741299f848e5bf752e",
276
+ "package.json": "18a1e415e56220fa5122428a4ef8eb8874756576",
277
+ };
278
+ const filePaths = Array.from(results.keys()).sort();
279
+ expect(filePaths).toHaveLength(Object.keys(expectedFiles).length);
280
+ filePaths.forEach((filePath) => expect(results.get(filePath)).toEqual(expectedFiles[filePath]));
281
+ }
282
+ finally {
283
+ FileSystem.deleteFile(tempFilePath);
284
+ }
285
+ });
286
+ });
287
+ //# sourceMappingURL=getPackageDeps.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getPackageDeps.test.js","sourceRoot":"","sources":["../../src/__tests__/getPackageDeps.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ export {};