apify-test-tools 0.10.2-beta.1 → 0.10.2-beta.10
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/.gitattributes +2 -0
- package/.github/actions/checkout-restore-dependencies/action.yaml +64 -27
- package/.github/cli/apify-test-tools.mjs +360 -0
- package/.github/scripts/check-major-tag-refs.mjs +1 -1
- package/.github/scripts/mask-config-secrets.sh +17 -0
- package/.github/scripts/run-with-apify-tokens.mjs +37 -12
- package/.github/workflows/_check_code.yaml +25 -0
- package/.github/workflows/_move_major_tag.yaml +3 -81
- package/.github/workflows/_tests.yaml +34 -0
- package/.github/workflows/_update_release_metadata.yaml +0 -12
- package/.github/workflows/manual_move_major_tag.yaml +3 -3
- package/.github/workflows/manual_release_stable.yaml +3 -13
- package/.github/workflows/on_master.yaml +9 -5
- package/.github/workflows/on_pull_request.yaml +3 -48
- package/.github/workflows/public_platform-tests-claude-investigate-and-fix.yaml +13 -2
- package/.github/workflows/public_platform-tests.yaml +24 -1
- package/.github/workflows/public_pr-build-test.yaml +61 -25
- package/.github/workflows/public_push-build-latest.yaml +41 -8
- package/.husky/pre-commit +5 -0
- package/.prettierignore +3 -0
- package/CHANGELOG.md +16 -0
- package/CONTRIBUTING.md +105 -21
- package/README.md +218 -600
- package/bin/affected-actors.ts +198 -0
- package/bin/build-from-local.ts +65 -13
- package/bin/build.ts +123 -41
- package/bin/diff-changes.ts +32 -23
- package/bin/diff-json-schema.ts +5 -6
- package/bin/git.ts +69 -99
- package/bin/main.ts +96 -135
- package/bin/slack.ts +43 -10
- package/bin/stdin-input.ts +65 -0
- package/bin/test-report.ts +6 -9
- package/bin/types.ts +15 -0
- package/dist/bin/affected-actors.d.ts +46 -0
- package/dist/bin/affected-actors.d.ts.map +1 -0
- package/dist/bin/affected-actors.js +135 -0
- package/dist/bin/affected-actors.js.map +1 -0
- package/dist/bin/build-from-local.d.ts +12 -3
- package/dist/bin/build-from-local.d.ts.map +1 -1
- package/dist/bin/build-from-local.js +34 -12
- package/dist/bin/build-from-local.js.map +1 -1
- package/dist/bin/build.d.ts +30 -7
- package/dist/bin/build.d.ts.map +1 -1
- package/dist/bin/build.js +85 -26
- package/dist/bin/build.js.map +1 -1
- package/dist/bin/diff-changes.d.ts +11 -4
- package/dist/bin/diff-changes.d.ts.map +1 -1
- package/dist/bin/diff-changes.js +19 -19
- package/dist/bin/diff-changes.js.map +1 -1
- package/dist/bin/diff-json-schema.d.ts +2 -2
- package/dist/bin/diff-json-schema.d.ts.map +1 -1
- package/dist/bin/diff-json-schema.js +1 -4
- package/dist/bin/diff-json-schema.js.map +1 -1
- package/dist/bin/git.d.ts +23 -21
- package/dist/bin/git.d.ts.map +1 -1
- package/dist/bin/git.js +60 -83
- package/dist/bin/git.js.map +1 -1
- package/dist/bin/main.js +82 -105
- package/dist/bin/main.js.map +1 -1
- package/dist/bin/slack.d.ts +14 -4
- package/dist/bin/slack.d.ts.map +1 -1
- package/dist/bin/slack.js +39 -6
- package/dist/bin/slack.js.map +1 -1
- package/dist/bin/stdin-input.d.ts +17 -0
- package/dist/bin/stdin-input.d.ts.map +1 -0
- package/dist/bin/stdin-input.js +54 -0
- package/dist/bin/stdin-input.js.map +1 -0
- package/dist/bin/test-report.d.ts.map +1 -1
- package/dist/bin/test-report.js +6 -8
- package/dist/bin/test-report.js.map +1 -1
- package/dist/bin/types.d.ts +13 -0
- package/dist/bin/types.d.ts.map +1 -1
- package/dist/lib/extend-expect.d.ts.map +1 -1
- package/dist/lib/extend-expect.js +37 -218
- package/dist/lib/extend-expect.js.map +1 -1
- package/dist/lib/lib.d.ts +1 -2
- package/dist/lib/lib.d.ts.map +1 -1
- package/dist/lib/lib.js +15 -22
- package/dist/lib/lib.js.map +1 -1
- package/dist/lib/run-checks.d.ts +14 -0
- package/dist/lib/run-checks.d.ts.map +1 -0
- package/dist/lib/run-checks.js +82 -0
- package/dist/lib/run-checks.js.map +1 -0
- package/dist/lib/run-test-result.d.ts +3 -6
- package/dist/lib/run-test-result.d.ts.map +1 -1
- package/dist/lib/run-test-result.js +41 -54
- package/dist/lib/run-test-result.js.map +1 -1
- package/dist/test/bundle/cli-bundle.test.d.ts +2 -0
- package/dist/test/bundle/cli-bundle.test.d.ts.map +1 -0
- package/dist/test/bundle/cli-bundle.test.js +190 -0
- package/dist/test/bundle/cli-bundle.test.js.map +1 -0
- package/dist/test/e2e/cli-bundle.e2e.test.d.ts +2 -0
- package/dist/test/e2e/cli-bundle.e2e.test.d.ts.map +1 -0
- package/dist/test/e2e/cli-bundle.e2e.test.js +138 -0
- package/dist/test/e2e/cli-bundle.e2e.test.js.map +1 -0
- package/dist/test/e2e/git-build-release.e2e.test.d.ts +2 -0
- package/dist/test/e2e/git-build-release.e2e.test.d.ts.map +1 -0
- package/dist/test/e2e/git-build-release.e2e.test.js +87 -0
- package/dist/test/e2e/git-build-release.e2e.test.js.map +1 -0
- package/dist/test/e2e/helpers.d.ts +37 -0
- package/dist/test/e2e/helpers.d.ts.map +1 -0
- package/dist/test/e2e/helpers.js +57 -0
- package/dist/test/e2e/helpers.js.map +1 -0
- package/dist/test/unit/bin/affected-actors-cli.test.d.ts +2 -0
- package/dist/test/unit/bin/affected-actors-cli.test.d.ts.map +1 -0
- package/dist/test/unit/bin/affected-actors-cli.test.js +167 -0
- package/dist/test/unit/bin/affected-actors-cli.test.js.map +1 -0
- package/dist/test/unit/bin/affected-actors.test.d.ts +2 -0
- package/dist/test/unit/bin/affected-actors.test.d.ts.map +1 -0
- package/dist/test/unit/bin/affected-actors.test.js +141 -0
- package/dist/test/unit/bin/affected-actors.test.js.map +1 -0
- package/dist/test/unit/bin/build-cli.test.d.ts +2 -0
- package/dist/test/unit/bin/build-cli.test.d.ts.map +1 -0
- package/dist/test/unit/bin/build-cli.test.js +44 -0
- package/dist/test/unit/bin/build-cli.test.js.map +1 -0
- package/dist/test/unit/bin/build-from-local.test.js +65 -1
- package/dist/test/unit/bin/build-from-local.test.js.map +1 -1
- package/dist/test/unit/bin/build.test.js +223 -3
- package/dist/test/unit/bin/build.test.js.map +1 -1
- package/dist/test/unit/bin/compiled-cli.d.ts +6 -0
- package/dist/test/unit/bin/compiled-cli.d.ts.map +1 -0
- package/dist/test/unit/bin/compiled-cli.js +16 -0
- package/dist/test/unit/bin/compiled-cli.js.map +1 -0
- package/dist/test/unit/bin/diff-changes.test.js +130 -101
- package/dist/test/unit/bin/diff-changes.test.js.map +1 -1
- package/dist/test/unit/bin/diff.test.js +25 -28
- package/dist/test/unit/bin/diff.test.js.map +1 -1
- package/dist/test/unit/bin/git.test.js +69 -152
- package/dist/test/unit/bin/git.test.js.map +1 -1
- package/dist/test/unit/bin/slack.test.d.ts +2 -0
- package/dist/test/unit/bin/slack.test.d.ts.map +1 -0
- package/dist/test/unit/bin/slack.test.js +71 -0
- package/dist/test/unit/bin/slack.test.js.map +1 -0
- package/dist/test/unit/bin/stdin-input.test.d.ts +2 -0
- package/dist/test/unit/bin/stdin-input.test.d.ts.map +1 -0
- package/dist/test/unit/bin/stdin-input.test.js +50 -0
- package/dist/test/unit/bin/stdin-input.test.js.map +1 -0
- package/dist/test/unit/github-scripts/mask-config-secrets.test.d.ts +2 -0
- package/dist/test/unit/github-scripts/mask-config-secrets.test.d.ts.map +1 -0
- package/dist/test/unit/github-scripts/mask-config-secrets.test.js +50 -0
- package/dist/test/unit/github-scripts/mask-config-secrets.test.js.map +1 -0
- package/dist/test/unit/github-scripts/run-with-apify-tokens.test.d.ts +2 -0
- package/dist/test/unit/github-scripts/run-with-apify-tokens.test.d.ts.map +1 -0
- package/dist/test/unit/github-scripts/run-with-apify-tokens.test.js +102 -0
- package/dist/test/unit/github-scripts/run-with-apify-tokens.test.js.map +1 -0
- package/dist/test/unit/run-checks.test.d.ts +2 -0
- package/dist/test/unit/run-checks.test.d.ts.map +1 -0
- package/dist/test/unit/run-checks.test.js +62 -0
- package/dist/test/unit/run-checks.test.js.map +1 -0
- package/dist/test/unit/run-test-result.test.d.ts +2 -0
- package/dist/test/unit/run-test-result.test.d.ts.map +1 -0
- package/dist/test/unit/run-test-result.test.js +34 -0
- package/dist/test/unit/run-test-result.test.js.map +1 -0
- package/dist/test/unit/should-built-and-test.test.js +41 -38
- package/dist/test/unit/should-built-and-test.test.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/docs/cli.md +373 -0
- package/docs/lib.md +271 -0
- package/docs/workflows.md +367 -0
- package/lib/extend-expect.ts +48 -258
- package/lib/lib.ts +24 -28
- package/lib/run-checks.ts +101 -0
- package/lib/run-test-result.ts +45 -55
- package/package.json +13 -3
- package/test/bundle/cli-bundle.test.ts +235 -0
- package/test/e2e/cli-bundle.e2e.test.ts +207 -0
- package/test/e2e/git-build-release.e2e.test.ts +113 -0
- package/test/e2e/helpers.ts +82 -0
- package/test/unit/bin/affected-actors-cli.test.ts +201 -0
- package/test/unit/bin/affected-actors.test.ts +182 -0
- package/test/unit/bin/build-cli.test.ts +55 -0
- package/test/unit/bin/build-from-local.test.ts +71 -0
- package/test/unit/bin/build.test.ts +279 -3
- package/test/unit/bin/compiled-cli.ts +17 -0
- package/test/unit/bin/diff-changes.test.ts +139 -101
- package/test/unit/bin/diff.test.ts +25 -28
- package/test/unit/bin/git.test.ts +85 -176
- package/test/unit/bin/slack.test.ts +84 -0
- package/test/unit/bin/stdin-input.test.ts +61 -0
- package/test/unit/github-scripts/mask-config-secrets.test.ts +61 -0
- package/test/unit/github-scripts/run-with-apify-tokens.test.ts +115 -0
- package/test/unit/run-checks.test.ts +76 -0
- package/test/unit/run-test-result.test.ts +44 -0
- package/test/unit/should-built-and-test.test.ts +46 -39
- package/.github/scripts/check-package-version-bump.mjs +0 -74
- package/.github/workflows-package-version +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"diff-changes.test.js","sourceRoot":"","sources":["../../../../test/unit/bin/diff-changes.test.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"diff-changes.test.js","sourceRoot":"","sources":["../../../../test/unit/bin/diff-changes.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,10 +1,7 @@
|
|
|
1
1
|
import { beforeEach, describe, expect, it, test, vi } from 'vitest';
|
|
2
2
|
import { isCosmeticOnlyJsonSchemaChange } from '../../../bin/diff-json-schema.js';
|
|
3
3
|
import * as Utils from '../../../bin/utils.js';
|
|
4
|
-
const
|
|
5
|
-
{ sha: 'Commit1', author: '', date: '', message: '' },
|
|
6
|
-
{ sha: 'Commit3', author: '', date: '', message: '' },
|
|
7
|
-
];
|
|
4
|
+
const range = { fromRef: 'Commit0', toRef: 'Commit3' };
|
|
8
5
|
describe('isCosmeticOnlyJsonSchemaChange', () => {
|
|
9
6
|
let gitCommandSpy;
|
|
10
7
|
beforeEach(() => {
|
|
@@ -16,43 +13,43 @@ describe('isCosmeticOnlyJsonSchemaChange', () => {
|
|
|
16
13
|
test('returns true when nothing changed', async () => {
|
|
17
14
|
const json = JSON.stringify({ type: 'string', title: 'My field' });
|
|
18
15
|
mockGitCalls(json, json);
|
|
19
|
-
await expect(isCosmeticOnlyJsonSchemaChange(
|
|
16
|
+
await expect(isCosmeticOnlyJsonSchemaChange(range, 'actors/foo/actor.json')).resolves.toBe(true);
|
|
20
17
|
});
|
|
21
18
|
test('returns true when only title changes', async () => {
|
|
22
19
|
mockGitCalls(JSON.stringify({ type: 'string', title: 'Old title' }), JSON.stringify({ type: 'string', title: 'New title' }));
|
|
23
|
-
await expect(isCosmeticOnlyJsonSchemaChange(
|
|
20
|
+
await expect(isCosmeticOnlyJsonSchemaChange(range, 'actors/foo/actor.json')).resolves.toBe(true);
|
|
24
21
|
});
|
|
25
22
|
test('returns true when only description changes', async () => {
|
|
26
23
|
mockGitCalls(JSON.stringify({ type: 'string', description: 'Old desc' }), JSON.stringify({ type: 'string', description: 'New desc' }));
|
|
27
|
-
await expect(isCosmeticOnlyJsonSchemaChange(
|
|
24
|
+
await expect(isCosmeticOnlyJsonSchemaChange(range, 'actors/foo/actor.json')).resolves.toBe(true);
|
|
28
25
|
});
|
|
29
26
|
test('returns true when only example changes', async () => {
|
|
30
27
|
mockGitCalls(JSON.stringify({ type: 'string', example: 'foo' }), JSON.stringify({ type: 'string', example: 'bar' }));
|
|
31
|
-
await expect(isCosmeticOnlyJsonSchemaChange(
|
|
28
|
+
await expect(isCosmeticOnlyJsonSchemaChange(range, 'actors/foo/actor.json')).resolves.toBe(true);
|
|
32
29
|
});
|
|
33
30
|
test('returns true when only enumTitles changes', async () => {
|
|
34
31
|
mockGitCalls(JSON.stringify({ type: 'string', enum: ['a', 'b'], enumTitles: ['Option A', 'Option B'] }), JSON.stringify({ type: 'string', enum: ['a', 'b'], enumTitles: ['Choice A', 'Choice B'] }));
|
|
35
|
-
await expect(isCosmeticOnlyJsonSchemaChange(
|
|
32
|
+
await expect(isCosmeticOnlyJsonSchemaChange(range, 'actors/foo/actor.json')).resolves.toBe(true);
|
|
36
33
|
});
|
|
37
34
|
test('returns true when only sectionCaption changes', async () => {
|
|
38
35
|
mockGitCalls(JSON.stringify({ sectionCaption: 'Old caption' }), JSON.stringify({ sectionCaption: 'New caption' }));
|
|
39
|
-
await expect(isCosmeticOnlyJsonSchemaChange(
|
|
36
|
+
await expect(isCosmeticOnlyJsonSchemaChange(range, 'actors/foo/actor.json')).resolves.toBe(true);
|
|
40
37
|
});
|
|
41
38
|
test('returns true when only sectionDescription changes', async () => {
|
|
42
39
|
mockGitCalls(JSON.stringify({ sectionDescription: 'Old' }), JSON.stringify({ sectionDescription: 'New' }));
|
|
43
|
-
await expect(isCosmeticOnlyJsonSchemaChange(
|
|
40
|
+
await expect(isCosmeticOnlyJsonSchemaChange(range, 'actors/foo/actor.json')).resolves.toBe(true);
|
|
44
41
|
});
|
|
45
42
|
test('returns false when a functional field (type) changes', async () => {
|
|
46
43
|
mockGitCalls(JSON.stringify({ type: 'string', title: 'My field' }), JSON.stringify({ type: 'integer', title: 'My field' }));
|
|
47
|
-
await expect(isCosmeticOnlyJsonSchemaChange(
|
|
44
|
+
await expect(isCosmeticOnlyJsonSchemaChange(range, 'actors/foo/actor.json')).resolves.toBe(false);
|
|
48
45
|
});
|
|
49
46
|
test('returns false when a functional field is added', async () => {
|
|
50
47
|
mockGitCalls(JSON.stringify({ title: 'My field' }), JSON.stringify({ title: 'My field', type: 'string' }));
|
|
51
|
-
await expect(isCosmeticOnlyJsonSchemaChange(
|
|
48
|
+
await expect(isCosmeticOnlyJsonSchemaChange(range, 'actors/foo/actor.json')).resolves.toBe(false);
|
|
52
49
|
});
|
|
53
50
|
test('returns false when a functional field is removed', async () => {
|
|
54
51
|
mockGitCalls(JSON.stringify({ type: 'string', title: 'My field' }), JSON.stringify({ title: 'My field' }));
|
|
55
|
-
await expect(isCosmeticOnlyJsonSchemaChange(
|
|
52
|
+
await expect(isCosmeticOnlyJsonSchemaChange(range, 'actors/foo/actor.json')).resolves.toBe(false);
|
|
56
53
|
});
|
|
57
54
|
test('returns true when non-functional fields change at nested level (input schema properties)', async () => {
|
|
58
55
|
mockGitCalls(JSON.stringify({
|
|
@@ -66,7 +63,7 @@ describe('isCosmeticOnlyJsonSchemaChange', () => {
|
|
|
66
63
|
myField: { type: 'string', title: 'New title', description: 'New desc', example: 'new' },
|
|
67
64
|
},
|
|
68
65
|
}));
|
|
69
|
-
await expect(isCosmeticOnlyJsonSchemaChange(
|
|
66
|
+
await expect(isCosmeticOnlyJsonSchemaChange(range, 'actors/foo/actor.json')).resolves.toBe(true);
|
|
70
67
|
});
|
|
71
68
|
test('returns false when a functional nested field changes alongside non-functional ones', async () => {
|
|
72
69
|
mockGitCalls(JSON.stringify({
|
|
@@ -76,35 +73,35 @@ describe('isCosmeticOnlyJsonSchemaChange', () => {
|
|
|
76
73
|
type: 'object',
|
|
77
74
|
properties: { myField: { type: 'integer', title: 'New title' } },
|
|
78
75
|
}));
|
|
79
|
-
await expect(isCosmeticOnlyJsonSchemaChange(
|
|
76
|
+
await expect(isCosmeticOnlyJsonSchemaChange(range, 'actors/foo/actor.json')).resolves.toBe(false);
|
|
80
77
|
});
|
|
81
78
|
test('returns false when a new property is added to input schema', async () => {
|
|
82
79
|
mockGitCalls(JSON.stringify({ properties: { fieldA: { type: 'string' } } }), JSON.stringify({ properties: { fieldA: { type: 'string' }, fieldB: { type: 'integer' } } }));
|
|
83
|
-
await expect(isCosmeticOnlyJsonSchemaChange(
|
|
80
|
+
await expect(isCosmeticOnlyJsonSchemaChange(range, 'actors/foo/actor.json')).resolves.toBe(false);
|
|
84
81
|
});
|
|
85
82
|
test('returns false when a property is removed from input schema', async () => {
|
|
86
83
|
mockGitCalls(JSON.stringify({ properties: { fieldA: { type: 'string' }, fieldB: { type: 'integer' } } }), JSON.stringify({ properties: { fieldA: { type: 'string' } } }));
|
|
87
|
-
await expect(isCosmeticOnlyJsonSchemaChange(
|
|
84
|
+
await expect(isCosmeticOnlyJsonSchemaChange(range, 'actors/foo/actor.json')).resolves.toBe(false);
|
|
88
85
|
});
|
|
89
86
|
test('returns false when invalid JSON in old content', async () => {
|
|
90
87
|
mockGitCalls('not json', '{}');
|
|
91
|
-
await expect(isCosmeticOnlyJsonSchemaChange(
|
|
88
|
+
await expect(isCosmeticOnlyJsonSchemaChange(range, 'actors/foo/actor.json')).resolves.toBe(false);
|
|
92
89
|
});
|
|
93
90
|
test('returns false when invalid JSON in new content', async () => {
|
|
94
91
|
mockGitCalls('{}', 'not json');
|
|
95
|
-
await expect(isCosmeticOnlyJsonSchemaChange(
|
|
92
|
+
await expect(isCosmeticOnlyJsonSchemaChange(range, 'actors/foo/actor.json')).resolves.toBe(false);
|
|
96
93
|
});
|
|
97
94
|
test('returns false when git cannot read a schema version', async () => {
|
|
98
95
|
gitCommandSpy.mockRejectedValueOnce(new Error('missing schema'));
|
|
99
|
-
await expect(isCosmeticOnlyJsonSchemaChange(
|
|
96
|
+
await expect(isCosmeticOnlyJsonSchemaChange(range, 'actors/foo/actor.json')).resolves.toBe(false);
|
|
100
97
|
});
|
|
101
98
|
test('returns false when array content changes (not under a non-functional key)', async () => {
|
|
102
99
|
mockGitCalls(JSON.stringify({ enum: [1, 2, 3] }), JSON.stringify({ enum: [1, 2, 4] }));
|
|
103
|
-
await expect(isCosmeticOnlyJsonSchemaChange(
|
|
100
|
+
await expect(isCosmeticOnlyJsonSchemaChange(range, 'actors/foo/actor.json')).resolves.toBe(false);
|
|
104
101
|
});
|
|
105
102
|
test('returns true when example array changes (non-functional key)', async () => {
|
|
106
103
|
mockGitCalls(JSON.stringify({ type: 'array', example: [1, 2, 3] }), JSON.stringify({ type: 'array', example: [4, 5, 6] }));
|
|
107
|
-
await expect(isCosmeticOnlyJsonSchemaChange(
|
|
104
|
+
await expect(isCosmeticOnlyJsonSchemaChange(range, 'actors/foo/actor.json')).resolves.toBe(true);
|
|
108
105
|
});
|
|
109
106
|
test('returns true for a realistic actor.json with only title/description change', async () => {
|
|
110
107
|
mockGitCalls(JSON.stringify({
|
|
@@ -120,7 +117,7 @@ describe('isCosmeticOnlyJsonSchemaChange', () => {
|
|
|
120
117
|
description: 'New description',
|
|
121
118
|
version: '1.0',
|
|
122
119
|
}));
|
|
123
|
-
await expect(isCosmeticOnlyJsonSchemaChange(
|
|
120
|
+
await expect(isCosmeticOnlyJsonSchemaChange(range, 'actors/foo/actor.json')).resolves.toBe(true);
|
|
124
121
|
});
|
|
125
122
|
test('returns true when fields under properties are reordered', async () => {
|
|
126
123
|
mockGitCalls(JSON.stringify({
|
|
@@ -130,17 +127,17 @@ describe('isCosmeticOnlyJsonSchemaChange', () => {
|
|
|
130
127
|
type: 'object',
|
|
131
128
|
properties: { fieldC: { type: 'boolean' }, fieldA: { type: 'string' }, fieldB: { type: 'integer' } },
|
|
132
129
|
}));
|
|
133
|
-
await expect(isCosmeticOnlyJsonSchemaChange(
|
|
130
|
+
await expect(isCosmeticOnlyJsonSchemaChange(range, 'actors/foo/actor.json')).resolves.toBe(true);
|
|
134
131
|
});
|
|
135
132
|
test('returns false for a realistic actor.json with version change', async () => {
|
|
136
133
|
mockGitCalls(JSON.stringify({ actorSpecification: 1, name: 'my-actor', title: 'My Actor', version: '1.0' }), JSON.stringify({ actorSpecification: 1, name: 'my-actor', title: 'My Actor', version: '1.1' }));
|
|
137
|
-
await expect(isCosmeticOnlyJsonSchemaChange(
|
|
134
|
+
await expect(isCosmeticOnlyJsonSchemaChange(range, 'actors/foo/actor.json')).resolves.toBe(false);
|
|
138
135
|
});
|
|
139
136
|
it('uses correct git refs: first-commit parent for old, last commit for new', async () => {
|
|
140
137
|
const json = JSON.stringify({});
|
|
141
138
|
mockGitCalls(json, json);
|
|
142
|
-
await isCosmeticOnlyJsonSchemaChange(
|
|
143
|
-
expect(gitCommandSpy).toHaveBeenCalledWith(['show', '
|
|
139
|
+
await isCosmeticOnlyJsonSchemaChange(range, 'actors/foo/actor.json');
|
|
140
|
+
expect(gitCommandSpy).toHaveBeenCalledWith(['show', 'Commit0:actors/foo/actor.json']);
|
|
144
141
|
expect(gitCommandSpy).toHaveBeenCalledWith(['show', 'Commit3:actors/foo/actor.json']);
|
|
145
142
|
});
|
|
146
143
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"diff.test.js","sourceRoot":"","sources":["../../../../test/unit/bin/diff.test.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AAEpE,OAAO,EAAE,8BAA8B,EAAE,MAAM,kCAAkC,CAAC;AAClF,OAAO,KAAK,KAAK,MAAM,uBAAuB,CAAC;AAE/C,MAAM,
|
|
1
|
+
{"version":3,"file":"diff.test.js","sourceRoot":"","sources":["../../../../test/unit/bin/diff.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { beforeEach, describe, expect, it, vi } from 'vitest';
|
|
2
|
-
import {
|
|
2
|
+
import { findCommitSha, getChangedFiles, getChangedFilesBetween, getCommits, getCommitsBetween, getCurrentBranch, getRepoName, normalizeRepoUrl, parseBaseCommit, resolveCommitSha, resolveReleaseBaseCommit, resolveRepoUrl, } from '../../../bin/git.js';
|
|
3
3
|
import * as Utils from '../../../bin/utils.js';
|
|
4
4
|
describe('getCommits', () => {
|
|
5
5
|
const sourceBranch = 'feature-branch';
|
|
@@ -78,7 +78,7 @@ describe('getChangedFiles', () => {
|
|
|
78
78
|
// Assert
|
|
79
79
|
expect(changedFiles).toStrictEqual(['file1.txt', 'folder/file2.txt']);
|
|
80
80
|
expect(gitCommandSpy).toHaveBeenCalledTimes(1);
|
|
81
|
-
expect(gitCommandSpy).toHaveBeenCalledWith(['diff', '--name-only', `${firstSha}~..${lastSha}`], {
|
|
81
|
+
expect(gitCommandSpy).toHaveBeenCalledWith(['diff', '--name-only', '--no-renames', `${firstSha}~..${lastSha}`], {
|
|
82
82
|
operation: 'get the list of changed files between commits',
|
|
83
83
|
});
|
|
84
84
|
});
|
|
@@ -96,7 +96,7 @@ describe('getChangedFiles', () => {
|
|
|
96
96
|
// Assert
|
|
97
97
|
expect(changedFiles).toStrictEqual(['file1.txt', 'folder/file2.txt']);
|
|
98
98
|
expect(gitCommandSpy).toHaveBeenCalledTimes(1);
|
|
99
|
-
expect(gitCommandSpy).toHaveBeenCalledWith(['diff', '--name-only', `${onlySha}~..${onlySha}`], {
|
|
99
|
+
expect(gitCommandSpy).toHaveBeenCalledWith(['diff', '--name-only', '--no-renames', `${onlySha}~..${onlySha}`], {
|
|
100
100
|
operation: 'get the list of changed files between commits',
|
|
101
101
|
});
|
|
102
102
|
});
|
|
@@ -113,102 +113,6 @@ describe('getChangedFiles', () => {
|
|
|
113
113
|
expect(changedFiles).toStrictEqual([]);
|
|
114
114
|
});
|
|
115
115
|
});
|
|
116
|
-
describe('hasMergeFromTarget', () => {
|
|
117
|
-
const sourceBranch = 'feature-branch';
|
|
118
|
-
const targetBranch = 'main';
|
|
119
|
-
const mergeSha = 'f'.repeat(40);
|
|
120
|
-
const branchParentSha = 'b'.repeat(40);
|
|
121
|
-
const targetParentSha = 't'.repeat(40);
|
|
122
|
-
const differentMergeBase = '0'.repeat(40);
|
|
123
|
-
let gitCommandSpy;
|
|
124
|
-
beforeEach(() => {
|
|
125
|
-
gitCommandSpy = vi.spyOn(Utils, 'runGitCommand');
|
|
126
|
-
});
|
|
127
|
-
it('should return false when there are no merge commits on the branch', async () => {
|
|
128
|
-
gitCommandSpy.mockImplementation(async (args) => {
|
|
129
|
-
if (args.includes('--merges'))
|
|
130
|
-
return '';
|
|
131
|
-
return '';
|
|
132
|
-
});
|
|
133
|
-
await expect(hasMergeFromTarget(sourceBranch, targetBranch)).resolves.toBe(false);
|
|
134
|
-
expect(gitCommandSpy).toHaveBeenCalledWith(['log', '--merges', '--pretty=format:%H', `${targetBranch}..${sourceBranch}`], { operation: 'find merge commits on the source branch that are absent from the target branch' });
|
|
135
|
-
});
|
|
136
|
-
it('should return true when a merge commit has a parent reachable from targetBranch', async () => {
|
|
137
|
-
gitCommandSpy.mockImplementation(async (args) => {
|
|
138
|
-
if (args.includes('--merges'))
|
|
139
|
-
return mergeSha;
|
|
140
|
-
if (args.includes('--pretty=format:%P'))
|
|
141
|
-
return `${branchParentSha} ${targetParentSha}`;
|
|
142
|
-
if (args[0] === 'merge-base' && args[1] === branchParentSha)
|
|
143
|
-
return differentMergeBase;
|
|
144
|
-
if (args[0] === 'merge-base' && args[1] === targetParentSha)
|
|
145
|
-
return targetParentSha;
|
|
146
|
-
return '';
|
|
147
|
-
});
|
|
148
|
-
await expect(hasMergeFromTarget(sourceBranch, targetBranch)).resolves.toBe(true);
|
|
149
|
-
expect(gitCommandSpy).toHaveBeenCalledWith(['merge-base', targetParentSha, targetBranch], {
|
|
150
|
-
operation: 'check whether a merge parent is reachable from the target branch',
|
|
151
|
-
});
|
|
152
|
-
});
|
|
153
|
-
it('should return false when the merge commit parent is not reachable from targetBranch (unrelated branch merge)', async () => {
|
|
154
|
-
const unrelatedSha = 'e'.repeat(40);
|
|
155
|
-
gitCommandSpy.mockImplementation(async (args) => {
|
|
156
|
-
if (args.includes('--merges'))
|
|
157
|
-
return mergeSha;
|
|
158
|
-
if (args.includes('--pretty=format:%P'))
|
|
159
|
-
return `${branchParentSha} ${unrelatedSha}`;
|
|
160
|
-
// merge-base returns something other than the parent — not an ancestor
|
|
161
|
-
if (args[0] === 'merge-base')
|
|
162
|
-
return differentMergeBase;
|
|
163
|
-
return '';
|
|
164
|
-
});
|
|
165
|
-
await expect(hasMergeFromTarget(sourceBranch, targetBranch)).resolves.toBe(false);
|
|
166
|
-
});
|
|
167
|
-
it('continues after merge-base reports unrelated histories', async () => {
|
|
168
|
-
gitCommandSpy.mockImplementation(async (args) => {
|
|
169
|
-
if (args.includes('--merges'))
|
|
170
|
-
return mergeSha;
|
|
171
|
-
if (args.includes('--pretty=format:%P'))
|
|
172
|
-
return `${branchParentSha} ${targetParentSha}`;
|
|
173
|
-
if (args[0] === 'merge-base' && args[1] === branchParentSha) {
|
|
174
|
-
throw new Utils.GitCommandError(args, Object.assign(new Error('no common ancestor'), { code: 1 }));
|
|
175
|
-
}
|
|
176
|
-
if (args[0] === 'merge-base' && args[1] === targetParentSha)
|
|
177
|
-
return targetParentSha;
|
|
178
|
-
return '';
|
|
179
|
-
});
|
|
180
|
-
await expect(hasMergeFromTarget(sourceBranch, targetBranch)).resolves.toBe(true);
|
|
181
|
-
});
|
|
182
|
-
it('propagates unexpected Git failures', async () => {
|
|
183
|
-
gitCommandSpy.mockImplementation(async (args, options) => {
|
|
184
|
-
if (args.includes('--merges'))
|
|
185
|
-
return mergeSha;
|
|
186
|
-
if (args.includes('--pretty=format:%P'))
|
|
187
|
-
return `${branchParentSha} ${targetParentSha}`;
|
|
188
|
-
throw new Utils.GitCommandError(args, Object.assign(new Error('Git failed'), { code: 128 }), options?.operation);
|
|
189
|
-
});
|
|
190
|
-
await expect(hasMergeFromTarget(sourceBranch, targetBranch)).rejects.toThrow('Failed to check whether a merge parent is reachable from the target branch.\n' +
|
|
191
|
-
'Command: git "merge-base"');
|
|
192
|
-
});
|
|
193
|
-
});
|
|
194
|
-
describe('getBranchOnlyChangedFiles', () => {
|
|
195
|
-
const sourceBranch = 'feature-branch';
|
|
196
|
-
const targetBranch = 'main';
|
|
197
|
-
let gitCommandSpy;
|
|
198
|
-
beforeEach(() => {
|
|
199
|
-
gitCommandSpy = vi.spyOn(Utils, 'runGitCommand');
|
|
200
|
-
});
|
|
201
|
-
it('should return files touched by non-merge commits', async () => {
|
|
202
|
-
gitCommandSpy.mockResolvedValue('README.md\n\nactors/foo_bar/src/main.ts\n');
|
|
203
|
-
const result = await getBranchOnlyChangedFiles(sourceBranch, targetBranch);
|
|
204
|
-
expect(result).toStrictEqual(['README.md', 'actors/foo_bar/src/main.ts']);
|
|
205
|
-
expect(gitCommandSpy).toHaveBeenCalledWith(['log', '--no-merges', '--name-only', '--pretty=format:', `${targetBranch}..${sourceBranch}`], { operation: 'list files changed by non-merge commits on the source branch' });
|
|
206
|
-
});
|
|
207
|
-
it('should return empty array when there are no non-merge commits', async () => {
|
|
208
|
-
gitCommandSpy.mockResolvedValue('');
|
|
209
|
-
await expect(getBranchOnlyChangedFiles(sourceBranch, targetBranch)).resolves.toStrictEqual([]);
|
|
210
|
-
});
|
|
211
|
-
});
|
|
212
116
|
const VALID_SHA = 'a'.repeat(40);
|
|
213
117
|
const VALID_JSON = JSON.stringify({ sha: VALID_SHA, author: 'test', date: 'now', message: 'msg' });
|
|
214
118
|
describe('parseBaseCommit', () => {
|
|
@@ -237,7 +141,7 @@ describe('getCurrentBranch', () => {
|
|
|
237
141
|
const gitCommandSpy = vi.spyOn(Utils, 'runGitCommand').mockResolvedValue('master');
|
|
238
142
|
await expect(getCurrentBranch()).resolves.toBe('master');
|
|
239
143
|
expect(gitCommandSpy).toHaveBeenCalledWith(['rev-parse', '--abbrev-ref', 'HEAD'], {
|
|
240
|
-
operation: 'determine the
|
|
144
|
+
operation: 'determine the checked-out branch',
|
|
241
145
|
});
|
|
242
146
|
});
|
|
243
147
|
it('should throw on a detached HEAD', async () => {
|
|
@@ -358,67 +262,80 @@ describe('resolveReleaseBaseCommit', () => {
|
|
|
358
262
|
it('should throw on an invalid SHA', async () => {
|
|
359
263
|
await expect(resolveReleaseBaseCommit('not-a-sha')).rejects.toThrow('Invalid base commit SHA');
|
|
360
264
|
});
|
|
361
|
-
|
|
362
|
-
|
|
363
|
-
const baseSha = 'b'.repeat(40);
|
|
364
|
-
const headSha = 'd'.repeat(40);
|
|
365
|
-
const mergedBranchCommit = `${'1'.repeat(40)}»¦«Dev<dev@example.com>»¦«Date1»¦«feat: branch change`;
|
|
366
|
-
const mergeCommit = `${headSha}»¦«Dev<dev@example.com>»¦«Date2»¦«Merge pull request #1`;
|
|
367
|
-
let gitRunSpy;
|
|
368
|
-
beforeEach(() => {
|
|
369
|
-
gitRunSpy = vi.spyOn(Utils, 'runGitCommand').mockImplementation(async (args) => {
|
|
265
|
+
it('checks ancestry against a custom head', async () => {
|
|
266
|
+
const gitCommandSpy = vi.spyOn(Utils, 'runGitCommand').mockImplementation(async (args) => {
|
|
370
267
|
if (args[0] === 'rev-parse')
|
|
371
|
-
return
|
|
372
|
-
if (args[0] === '
|
|
373
|
-
return
|
|
374
|
-
if (args.includes('--name-only'))
|
|
375
|
-
return 'actors/foo/src/main.ts\nCHANGELOG.md';
|
|
376
|
-
if (args[0] === 'diff')
|
|
377
|
-
return 'diff --git a/CHANGELOG.md b/CHANGELOG.md\n--- a/CHANGELOG.md\n+++ b/CHANGELOG.md\n@@ -1 +1,2 @@\n+- Added foo\n # Changelog';
|
|
268
|
+
return baseSha;
|
|
269
|
+
if (args[0] === 'merge-base')
|
|
270
|
+
return 'c'.repeat(40);
|
|
378
271
|
return '';
|
|
379
272
|
});
|
|
380
|
-
|
|
381
|
-
|
|
382
|
-
|
|
383
|
-
expect(changes).toStrictEqual({
|
|
384
|
-
commits: [
|
|
385
|
-
{ sha: '1'.repeat(40), author: 'Dev<dev@example.com>', date: 'Date1', message: 'feat: branch change' },
|
|
386
|
-
{ sha: headSha, author: 'Dev<dev@example.com>', date: 'Date2', message: 'Merge pull request #1' },
|
|
387
|
-
],
|
|
388
|
-
changedFiles: ['actors/foo/src/main.ts', 'CHANGELOG.md'],
|
|
389
|
-
changelog: '- Added foo',
|
|
273
|
+
await expect(resolveReleaseBaseCommit(baseSha, 'origin/release')).rejects.toThrow('is not an ancestor of origin/release');
|
|
274
|
+
expect(gitCommandSpy).toHaveBeenCalledWith(['merge-base', baseSha, 'origin/release'], {
|
|
275
|
+
operation: 'check whether the release base commit is an ancestor of origin/release',
|
|
390
276
|
});
|
|
391
|
-
|
|
392
|
-
|
|
393
|
-
|
|
394
|
-
|
|
395
|
-
|
|
396
|
-
|
|
397
|
-
});
|
|
398
|
-
|
|
399
|
-
expect(
|
|
400
|
-
|
|
277
|
+
});
|
|
278
|
+
});
|
|
279
|
+
describe('getCommitsBetween', () => {
|
|
280
|
+
it('lists the commits after fromRef up to toRef, oldest first', async () => {
|
|
281
|
+
const older = `${'1'.repeat(40)}»¦«Dev<dev@example.com>»¦«Date1»¦«first`;
|
|
282
|
+
const newer = `${'2'.repeat(40)}»¦«Dev<dev@example.com>»¦«Date2»¦«second`;
|
|
283
|
+
const spy = vi.spyOn(Utils, 'runGitCommand').mockResolvedValue(`${newer}\n${older}`);
|
|
284
|
+
const commits = await getCommitsBetween('base-sha', 'head-sha');
|
|
285
|
+
expect(commits.map((c) => c.message)).toStrictEqual(['first', 'second']);
|
|
286
|
+
expect(spy).toHaveBeenCalledWith(['log', '--pretty=format:%H»¦«%aN<%aE>»¦«%aD»¦«%s', 'base-sha..head-sha'], {
|
|
287
|
+
operation: 'list commits reachable from the source ref but absent from the target ref',
|
|
401
288
|
});
|
|
402
289
|
});
|
|
403
|
-
|
|
404
|
-
|
|
405
|
-
|
|
406
|
-
|
|
407
|
-
|
|
290
|
+
});
|
|
291
|
+
describe('empty commit ranges', () => {
|
|
292
|
+
// Real git on this repository's own history: HEAD..HEAD has no commits
|
|
293
|
+
beforeEach(() => {
|
|
294
|
+
vi.restoreAllMocks();
|
|
295
|
+
});
|
|
296
|
+
it('getCommitsBetween returns no commits', async () => {
|
|
297
|
+
await expect(getCommitsBetween('HEAD', 'HEAD')).resolves.toStrictEqual([]);
|
|
298
|
+
});
|
|
299
|
+
it('getCommits fails clearly, since the commands built on it need at least one commit', async () => {
|
|
300
|
+
await expect(getCommits({ sourceBranch: 'HEAD', targetBranch: 'HEAD' })).rejects.toThrow('HEAD has no commits that are not on HEAD.');
|
|
301
|
+
});
|
|
302
|
+
});
|
|
303
|
+
describe('getChangedFilesBetween', () => {
|
|
304
|
+
it('diffs the two endpoints directly', async () => {
|
|
305
|
+
const spy = vi.spyOn(Utils, 'runGitCommand').mockResolvedValue('src/main.ts\nCHANGELOG.md');
|
|
306
|
+
await expect(getChangedFilesBetween('base-sha', 'head-sha')).resolves.toStrictEqual([
|
|
307
|
+
'src/main.ts',
|
|
308
|
+
'CHANGELOG.md',
|
|
309
|
+
]);
|
|
310
|
+
expect(spy).toHaveBeenCalledWith(['diff', '--name-only', '--no-renames', 'base-sha..head-sha'], {
|
|
311
|
+
operation: 'get the list of changed files between commits',
|
|
408
312
|
});
|
|
409
313
|
});
|
|
410
|
-
|
|
411
|
-
|
|
412
|
-
|
|
413
|
-
|
|
414
|
-
|
|
415
|
-
|
|
416
|
-
|
|
417
|
-
|
|
418
|
-
return '';
|
|
314
|
+
});
|
|
315
|
+
describe('resolveCommitSha', () => {
|
|
316
|
+
it('resolves a ref to the commit it points to', async () => {
|
|
317
|
+
const sha = 'a'.repeat(40);
|
|
318
|
+
const spy = vi.spyOn(Utils, 'runGitCommand').mockResolvedValue(sha);
|
|
319
|
+
await expect(resolveCommitSha('origin/feature')).resolves.toBe(sha);
|
|
320
|
+
expect(spy).toHaveBeenCalledWith(['rev-parse', '--verify', 'origin/feature^{commit}'], {
|
|
321
|
+
operation: 'resolve origin/feature to a commit',
|
|
419
322
|
});
|
|
420
|
-
|
|
421
|
-
|
|
323
|
+
});
|
|
324
|
+
});
|
|
325
|
+
describe('findCommitSha', () => {
|
|
326
|
+
// Real git on this repository's own history, since what matters is how git answers
|
|
327
|
+
beforeEach(() => {
|
|
328
|
+
vi.restoreAllMocks();
|
|
329
|
+
});
|
|
330
|
+
it('resolves a ref in the local history to its commit', async () => {
|
|
331
|
+
await expect(findCommitSha('HEAD')).resolves.toMatch(/^[0-9a-f]{40}$/);
|
|
332
|
+
});
|
|
333
|
+
it('returns undefined for a commit missing from the local history', async () => {
|
|
334
|
+
await expect(findCommitSha('d'.repeat(40))).resolves.toBeUndefined();
|
|
335
|
+
});
|
|
336
|
+
it('rethrows other git failures', async () => {
|
|
337
|
+
vi.spyOn(Utils, 'runGitCommand').mockRejectedValue(new Error('not a git repository'));
|
|
338
|
+
await expect(findCommitSha('HEAD')).rejects.toThrow('not a git repository');
|
|
422
339
|
});
|
|
423
340
|
});
|
|
424
341
|
//# sourceMappingURL=git.test.js.map
|