apify-test-tools 0.10.2-beta.0 → 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.
Files changed (187) hide show
  1. package/.gitattributes +2 -0
  2. package/.github/actions/checkout-restore-dependencies/action.yaml +64 -27
  3. package/.github/cli/apify-test-tools.mjs +360 -0
  4. package/.github/scripts/check-major-tag-refs.mjs +1 -1
  5. package/.github/scripts/mask-config-secrets.sh +17 -0
  6. package/.github/scripts/run-with-apify-tokens.mjs +37 -12
  7. package/.github/workflows/_check_code.yaml +25 -0
  8. package/.github/workflows/_move_major_tag.yaml +3 -81
  9. package/.github/workflows/_tests.yaml +34 -0
  10. package/.github/workflows/_update_release_metadata.yaml +0 -12
  11. package/.github/workflows/manual_move_major_tag.yaml +3 -3
  12. package/.github/workflows/manual_release_stable.yaml +3 -13
  13. package/.github/workflows/on_master.yaml +9 -5
  14. package/.github/workflows/on_pull_request.yaml +3 -48
  15. package/.github/workflows/public_platform-tests-claude-investigate-and-fix.yaml +13 -2
  16. package/.github/workflows/public_platform-tests.yaml +24 -1
  17. package/.github/workflows/public_pr-build-test.yaml +62 -49
  18. package/.github/workflows/public_push-build-latest.yaml +41 -8
  19. package/.husky/pre-commit +5 -0
  20. package/.prettierignore +3 -0
  21. package/CHANGELOG.md +17 -0
  22. package/CONTRIBUTING.md +105 -21
  23. package/README.md +218 -597
  24. package/bin/affected-actors.ts +198 -0
  25. package/bin/build-from-local.ts +65 -13
  26. package/bin/build.ts +123 -41
  27. package/bin/diff-changes.ts +55 -25
  28. package/bin/diff-json-schema.ts +5 -6
  29. package/bin/git.ts +69 -99
  30. package/bin/main.ts +96 -122
  31. package/bin/slack.ts +43 -10
  32. package/bin/stdin-input.ts +65 -0
  33. package/bin/test-report.ts +6 -9
  34. package/bin/types.ts +16 -0
  35. package/dist/bin/affected-actors.d.ts +46 -0
  36. package/dist/bin/affected-actors.d.ts.map +1 -0
  37. package/dist/bin/affected-actors.js +135 -0
  38. package/dist/bin/affected-actors.js.map +1 -0
  39. package/dist/bin/build-from-local.d.ts +12 -3
  40. package/dist/bin/build-from-local.d.ts.map +1 -1
  41. package/dist/bin/build-from-local.js +34 -12
  42. package/dist/bin/build-from-local.js.map +1 -1
  43. package/dist/bin/build.d.ts +30 -7
  44. package/dist/bin/build.d.ts.map +1 -1
  45. package/dist/bin/build.js +85 -26
  46. package/dist/bin/build.js.map +1 -1
  47. package/dist/bin/diff-changes.d.ts +12 -4
  48. package/dist/bin/diff-changes.d.ts.map +1 -1
  49. package/dist/bin/diff-changes.js +31 -20
  50. package/dist/bin/diff-changes.js.map +1 -1
  51. package/dist/bin/diff-json-schema.d.ts +2 -2
  52. package/dist/bin/diff-json-schema.d.ts.map +1 -1
  53. package/dist/bin/diff-json-schema.js +1 -4
  54. package/dist/bin/diff-json-schema.js.map +1 -1
  55. package/dist/bin/git.d.ts +23 -21
  56. package/dist/bin/git.d.ts.map +1 -1
  57. package/dist/bin/git.js +60 -83
  58. package/dist/bin/git.js.map +1 -1
  59. package/dist/bin/main.js +82 -93
  60. package/dist/bin/main.js.map +1 -1
  61. package/dist/bin/slack.d.ts +14 -4
  62. package/dist/bin/slack.d.ts.map +1 -1
  63. package/dist/bin/slack.js +39 -6
  64. package/dist/bin/slack.js.map +1 -1
  65. package/dist/bin/stdin-input.d.ts +17 -0
  66. package/dist/bin/stdin-input.d.ts.map +1 -0
  67. package/dist/bin/stdin-input.js +54 -0
  68. package/dist/bin/stdin-input.js.map +1 -0
  69. package/dist/bin/test-report.d.ts.map +1 -1
  70. package/dist/bin/test-report.js +6 -8
  71. package/dist/bin/test-report.js.map +1 -1
  72. package/dist/bin/types.d.ts +14 -0
  73. package/dist/bin/types.d.ts.map +1 -1
  74. package/dist/lib/extend-expect.d.ts.map +1 -1
  75. package/dist/lib/extend-expect.js +37 -218
  76. package/dist/lib/extend-expect.js.map +1 -1
  77. package/dist/lib/lib.d.ts +1 -2
  78. package/dist/lib/lib.d.ts.map +1 -1
  79. package/dist/lib/lib.js +15 -22
  80. package/dist/lib/lib.js.map +1 -1
  81. package/dist/lib/run-checks.d.ts +14 -0
  82. package/dist/lib/run-checks.d.ts.map +1 -0
  83. package/dist/lib/run-checks.js +82 -0
  84. package/dist/lib/run-checks.js.map +1 -0
  85. package/dist/lib/run-test-result.d.ts +3 -6
  86. package/dist/lib/run-test-result.d.ts.map +1 -1
  87. package/dist/lib/run-test-result.js +41 -54
  88. package/dist/lib/run-test-result.js.map +1 -1
  89. package/dist/test/bundle/cli-bundle.test.d.ts +2 -0
  90. package/dist/test/bundle/cli-bundle.test.d.ts.map +1 -0
  91. package/dist/test/bundle/cli-bundle.test.js +190 -0
  92. package/dist/test/bundle/cli-bundle.test.js.map +1 -0
  93. package/dist/test/e2e/cli-bundle.e2e.test.d.ts +2 -0
  94. package/dist/test/e2e/cli-bundle.e2e.test.d.ts.map +1 -0
  95. package/dist/test/e2e/cli-bundle.e2e.test.js +138 -0
  96. package/dist/test/e2e/cli-bundle.e2e.test.js.map +1 -0
  97. package/dist/test/e2e/git-build-release.e2e.test.d.ts +2 -0
  98. package/dist/test/e2e/git-build-release.e2e.test.d.ts.map +1 -0
  99. package/dist/test/e2e/git-build-release.e2e.test.js +87 -0
  100. package/dist/test/e2e/git-build-release.e2e.test.js.map +1 -0
  101. package/dist/test/e2e/helpers.d.ts +37 -0
  102. package/dist/test/e2e/helpers.d.ts.map +1 -0
  103. package/dist/test/e2e/helpers.js +57 -0
  104. package/dist/test/e2e/helpers.js.map +1 -0
  105. package/dist/test/unit/bin/affected-actors-cli.test.d.ts +2 -0
  106. package/dist/test/unit/bin/affected-actors-cli.test.d.ts.map +1 -0
  107. package/dist/test/unit/bin/affected-actors-cli.test.js +167 -0
  108. package/dist/test/unit/bin/affected-actors-cli.test.js.map +1 -0
  109. package/dist/test/unit/bin/affected-actors.test.d.ts +2 -0
  110. package/dist/test/unit/bin/affected-actors.test.d.ts.map +1 -0
  111. package/dist/test/unit/bin/affected-actors.test.js +141 -0
  112. package/dist/test/unit/bin/affected-actors.test.js.map +1 -0
  113. package/dist/test/unit/bin/build-cli.test.d.ts +2 -0
  114. package/dist/test/unit/bin/build-cli.test.d.ts.map +1 -0
  115. package/dist/test/unit/bin/build-cli.test.js +44 -0
  116. package/dist/test/unit/bin/build-cli.test.js.map +1 -0
  117. package/dist/test/unit/bin/build-from-local.test.js +65 -1
  118. package/dist/test/unit/bin/build-from-local.test.js.map +1 -1
  119. package/dist/test/unit/bin/build.test.js +223 -3
  120. package/dist/test/unit/bin/build.test.js.map +1 -1
  121. package/dist/test/unit/bin/compiled-cli.d.ts +6 -0
  122. package/dist/test/unit/bin/compiled-cli.d.ts.map +1 -0
  123. package/dist/test/unit/bin/compiled-cli.js +16 -0
  124. package/dist/test/unit/bin/compiled-cli.js.map +1 -0
  125. package/dist/test/unit/bin/diff-changes.test.js +205 -85
  126. package/dist/test/unit/bin/diff-changes.test.js.map +1 -1
  127. package/dist/test/unit/bin/diff.test.js +25 -28
  128. package/dist/test/unit/bin/diff.test.js.map +1 -1
  129. package/dist/test/unit/bin/git.test.js +69 -152
  130. package/dist/test/unit/bin/git.test.js.map +1 -1
  131. package/dist/test/unit/bin/slack.test.d.ts +2 -0
  132. package/dist/test/unit/bin/slack.test.d.ts.map +1 -0
  133. package/dist/test/unit/bin/slack.test.js +71 -0
  134. package/dist/test/unit/bin/slack.test.js.map +1 -0
  135. package/dist/test/unit/bin/stdin-input.test.d.ts +2 -0
  136. package/dist/test/unit/bin/stdin-input.test.d.ts.map +1 -0
  137. package/dist/test/unit/bin/stdin-input.test.js +50 -0
  138. package/dist/test/unit/bin/stdin-input.test.js.map +1 -0
  139. package/dist/test/unit/github-scripts/mask-config-secrets.test.d.ts +2 -0
  140. package/dist/test/unit/github-scripts/mask-config-secrets.test.d.ts.map +1 -0
  141. package/dist/test/unit/github-scripts/mask-config-secrets.test.js +50 -0
  142. package/dist/test/unit/github-scripts/mask-config-secrets.test.js.map +1 -0
  143. package/dist/test/unit/github-scripts/run-with-apify-tokens.test.d.ts +2 -0
  144. package/dist/test/unit/github-scripts/run-with-apify-tokens.test.d.ts.map +1 -0
  145. package/dist/test/unit/github-scripts/run-with-apify-tokens.test.js +102 -0
  146. package/dist/test/unit/github-scripts/run-with-apify-tokens.test.js.map +1 -0
  147. package/dist/test/unit/run-checks.test.d.ts +2 -0
  148. package/dist/test/unit/run-checks.test.d.ts.map +1 -0
  149. package/dist/test/unit/run-checks.test.js +62 -0
  150. package/dist/test/unit/run-checks.test.js.map +1 -0
  151. package/dist/test/unit/run-test-result.test.d.ts +2 -0
  152. package/dist/test/unit/run-test-result.test.d.ts.map +1 -0
  153. package/dist/test/unit/run-test-result.test.js +34 -0
  154. package/dist/test/unit/run-test-result.test.js.map +1 -0
  155. package/dist/test/unit/should-built-and-test.test.js +41 -38
  156. package/dist/test/unit/should-built-and-test.test.js.map +1 -1
  157. package/dist/tsconfig.tsbuildinfo +1 -1
  158. package/docs/cli.md +373 -0
  159. package/docs/lib.md +271 -0
  160. package/docs/workflows.md +367 -0
  161. package/lib/extend-expect.ts +48 -258
  162. package/lib/lib.ts +24 -28
  163. package/lib/run-checks.ts +101 -0
  164. package/lib/run-test-result.ts +45 -55
  165. package/package.json +15 -3
  166. package/test/bundle/cli-bundle.test.ts +235 -0
  167. package/test/e2e/cli-bundle.e2e.test.ts +207 -0
  168. package/test/e2e/git-build-release.e2e.test.ts +113 -0
  169. package/test/e2e/helpers.ts +82 -0
  170. package/test/unit/bin/affected-actors-cli.test.ts +201 -0
  171. package/test/unit/bin/affected-actors.test.ts +182 -0
  172. package/test/unit/bin/build-cli.test.ts +55 -0
  173. package/test/unit/bin/build-from-local.test.ts +71 -0
  174. package/test/unit/bin/build.test.ts +279 -3
  175. package/test/unit/bin/compiled-cli.ts +17 -0
  176. package/test/unit/bin/diff-changes.test.ts +229 -85
  177. package/test/unit/bin/diff.test.ts +25 -28
  178. package/test/unit/bin/git.test.ts +85 -176
  179. package/test/unit/bin/slack.test.ts +84 -0
  180. package/test/unit/bin/stdin-input.test.ts +61 -0
  181. package/test/unit/github-scripts/mask-config-secrets.test.ts +61 -0
  182. package/test/unit/github-scripts/run-with-apify-tokens.test.ts +115 -0
  183. package/test/unit/run-checks.test.ts +76 -0
  184. package/test/unit/run-test-result.test.ts +44 -0
  185. package/test/unit/should-built-and-test.test.ts +46 -39
  186. package/.github/scripts/check-package-version-bump.mjs +0 -74
  187. package/.github/workflows-package-version +0 -1
@@ -1,101 +1,34 @@
1
- import { TO_FINISH_WITH_OPTIONS } from './consts.js';
1
+ import { inspect } from 'node:util';
2
+ import { checkRun } from './run-checks.js';
3
+ /** Matchers that only check the type or shape of a value. */
4
+ const SHAPE_MATCHERS = {
5
+ toBeArray: ['an array', (actual) => Array.isArray(actual)],
6
+ toBeBoolean: ['a boolean', (actual) => typeof actual === 'boolean'],
7
+ toBeEmptyArray: ['an empty array', (actual) => Array.isArray(actual) && actual.length === 0],
8
+ toBeNonEmptyArray: ['a non-empty array', (actual) => Array.isArray(actual) && actual.length > 0],
9
+ toBeNonEmptyString: ['a non-empty string', (actual) => typeof actual === 'string' && actual.length > 0],
10
+ toBeNumber: ['a number', (actual) => typeof actual === 'number'],
11
+ toBeFalse: ['false', (actual) => actual === false],
12
+ toBeTrue: ['true', (actual) => actual === true],
13
+ toBeNonEmptyObject: ['a non-empty object', (actual) => isObject(actual) && Object.keys(actual).length > 0],
14
+ toBeObject: ['an object', isObject],
15
+ toBeString: ['a string', (actual) => typeof actual === 'string'],
16
+ toBeWholeNumber: ['a whole number', (actual) => Number.isInteger(actual)],
17
+ };
18
+ function isObject(actual) {
19
+ return typeof actual === 'object' && !Array.isArray(actual) && actual !== null;
20
+ }
21
+ const shapeMatchers = Object.fromEntries(Object.entries(SHAPE_MATCHERS).map(([name, [description, predicate]]) => [
22
+ name,
23
+ (actual) => ({
24
+ pass: predicate(actual),
25
+ message: () => `Expected ${inspect(actual)} to be ${description}`,
26
+ actual,
27
+ }),
28
+ ]));
2
29
  export const extendExpect = (expect) => {
3
30
  expect.extend({
4
- toBeArray: (actual) => {
5
- const pass = Array.isArray(actual);
6
- return {
7
- pass,
8
- message: () => `Expected "${actual}" to be a array`,
9
- };
10
- },
11
- toBeBoolean: (received) => {
12
- const actual = typeof received;
13
- const expected = 'boolean';
14
- return {
15
- pass: actual === expected,
16
- message: () => `Expected "${actual}" to be a boolean`,
17
- expected: 'boolean',
18
- };
19
- },
20
- toBeEmptyArray: (actual) => {
21
- const pass = Array.isArray(actual) && actual.length === 0;
22
- return {
23
- pass,
24
- message: () => `Expected ${actual} to be an empty array`,
25
- actual,
26
- expected: [],
27
- };
28
- },
29
- toBeNonEmptyArray: (actual) => {
30
- const pass = Array.isArray(actual) && actual.length > 0;
31
- return {
32
- pass,
33
- message: () => `Expected ${actual} to be a non-empty array`,
34
- };
35
- },
36
- toBeNonEmptyString: (actual) => {
37
- const pass = typeof actual === 'string' && actual.length > 0;
38
- return {
39
- pass,
40
- message: () => `Expected "${actual}" to be a non-empty string`,
41
- };
42
- },
43
- toBeNumber: (actual) => {
44
- const pass = typeof actual === 'number';
45
- return {
46
- pass,
47
- message: () => `Expected "${actual}" to be a number`,
48
- };
49
- },
50
- toBeNonEmptyObject: (actual) => {
51
- const isObject = typeof actual === 'object' && !Array.isArray(actual) && actual !== null;
52
- const isNonEmpty = Object.entries(actual).length > 0;
53
- const pass = isObject && isNonEmpty;
54
- return {
55
- pass,
56
- message: () => `Expected "${actual}" to be a non-emtpy object`,
57
- };
58
- },
59
- toBeObject: (actual) => {
60
- const pass = typeof actual === 'object' && !Array.isArray(actual) && actual !== null;
61
- return {
62
- pass,
63
- message: () => `Expected "${actual}" to be an object`,
64
- };
65
- },
66
- toBeString: (received) => {
67
- const actual = typeof received;
68
- const expected = 'string';
69
- return {
70
- pass: actual === expected,
71
- message: () => `Expected "${actual}" to be a string`,
72
- actual,
73
- expected,
74
- };
75
- },
76
- toBeTrue: (actual) => {
77
- const pass = actual === true;
78
- return {
79
- pass,
80
- message: () => `Expected "${actual}" to be true`,
81
- expected: true,
82
- actual,
83
- };
84
- },
85
- toBeFalse: (actual) => {
86
- const pass = actual === false;
87
- return {
88
- pass,
89
- message: () => `Expected "${actual}" to be false`,
90
- };
91
- },
92
- toBeWholeNumber: (received) => {
93
- const pass = Number.isInteger(received);
94
- return {
95
- pass,
96
- message: () => `Expected "${received}" to be a whole number`,
97
- };
98
- },
31
+ ...shapeMatchers,
99
32
  toBeWithinRange: (received, lower, upper) => {
100
33
  const pass = received >= lower && received <= upper;
101
34
  return {
@@ -104,102 +37,15 @@ export const extendExpect = (expect) => {
104
37
  };
105
38
  },
106
39
  toFinishWith: async (received, userOptions) => {
107
- const options = {
108
- ...TO_FINISH_WITH_OPTIONS,
109
- ...userOptions,
110
- };
111
- const failedAssertions = [];
112
- const diffs = {
113
- pass: true,
114
- actual: ['Run:'],
115
- expected: ['Run:'],
116
- };
117
- {
118
- const expected = options?.status;
119
- const actual = received.status;
120
- const statusTest = expected === actual;
121
- if (statusTest === false) {
122
- diffs.pass = false;
123
- diffs.actual.push(`status=${actual}`);
124
- diffs.expected.push(`status=${expected}`);
125
- failedAssertions.push(`Failed status check, expected "${expected}", got "${actual}".`);
126
- }
127
- }
128
- const { chargedEventCounts, stats: { durationMillis }, } = await received.getRunInfo();
129
- const datasetItemCount = (await received.getDataset()).items.length;
130
- const stats = await received.getStatistics();
131
- const checkInterval = (value, key, label) => {
132
- const result = isWithinInterval(diffs, value, options, key);
133
- if (result === false) {
134
- failedAssertions.push(`Failed ${label} check, expected ${JSON.stringify(options[key])}, got ${value}.`);
135
- }
136
- };
137
- checkInterval(datasetItemCount, 'datasetItemCount', 'dataset item count');
138
- checkInterval(durationMillis, 'duration', 'duration');
139
- checkInterval(stats?.requestsFailed, 'failedRequests', 'failed requests');
140
- checkInterval(stats?.requestsRetries, 'requestsRetries', 'requests retries');
141
- if (options.maxRetriesPerRequest !== null) {
142
- const maxRetriesPerRequestObserved = (stats?.requestRetryHistogram ?? [0]).length - 1;
143
- if (maxRetriesPerRequestObserved > options.maxRetriesPerRequest) {
144
- diffs.pass = false;
145
- diffs.actual.push(`maxRetriesPerRequest=${maxRetriesPerRequestObserved}`);
146
- diffs.expected.push(`maxRetriesPerRequest<=${options.maxRetriesPerRequest}`);
147
- failedAssertions.push(`Failed max retries observed check, expected <=${options.maxRetriesPerRequest}, got ${maxRetriesPerRequestObserved}.`);
148
- }
149
- }
150
- const ppeDiffs = {
151
- pass: true,
152
- actual: ['PPE Events:'],
153
- expected: ['PPE Events:'],
154
- };
155
- if (options.chargedEventCounts) {
156
- const expected = options.chargedEventCounts;
157
- const actual = chargedEventCounts ?? {};
158
- const uniquePpeEvents = new Set([
159
- ...Array.from(Object.keys(expected)),
160
- ...Array.from(Object.keys(actual)),
161
- ]);
162
- for (const ppeEvent of uniquePpeEvents) {
163
- if (!(ppeEvent in expected)) {
164
- isWithinInterval(ppeDiffs, actual[ppeEvent], { [ppeEvent]: 0 }, ppeEvent);
165
- continue;
166
- }
167
- if (!(ppeEvent in actual)) {
168
- ppeDiffs.pass = false;
169
- ppeDiffs.actual.push(`${ppeEvent}=X`);
170
- ppeDiffs.expected.push(`${ppeEvent}=${expected[ppeEvent]}`);
171
- continue;
172
- }
173
- isWithinInterval(ppeDiffs, actual[ppeEvent], expected, ppeEvent);
174
- }
175
- if (ppeDiffs.pass === false) {
176
- diffs.pass = ppeDiffs.pass;
177
- diffs.actual.push(ppeDiffs.actual.join('\n '));
178
- diffs.expected.push(ppeDiffs.expected.join('\n '));
179
- failedAssertions.push(`Failed PPE event counts check, expected ${JSON.stringify(options.chargedEventCounts)}, got ${JSON.stringify(chargedEventCounts)}.`);
180
- }
181
- }
182
- {
183
- const { forbiddenLogs } = options;
184
- const log = await received.getLog();
185
- const occuredLogs = [];
186
- for (const forbiddenLog of forbiddenLogs) {
187
- if (log.includes(forbiddenLog)) {
188
- occuredLogs.push(forbiddenLog);
189
- }
190
- }
191
- if (occuredLogs.length > 0) {
192
- diffs.pass = false;
193
- diffs.actual.push(` logs=[${occuredLogs.join(', ')}]`);
194
- diffs.expected.push(` logs=[]`);
195
- failedAssertions.push(`Failed forbidden logs check, expected [] but got [${occuredLogs.join(', ')}].`);
196
- }
197
- }
40
+ const checks = await checkRun(received, userOptions);
41
+ const failed = checks.filter(({ pass }) => !pass);
198
42
  return {
199
- pass: diffs.pass,
200
- message: () => `Run did not finish as expected. Failed assertions: ${failedAssertions.join(' ')}`,
201
- actual: diffs.actual.join('\n '),
202
- expected: diffs.expected.join('\n '),
43
+ pass: failed.length === 0,
44
+ message: () => `Run did not finish as expected. Failed assertions: ${failed
45
+ .map(({ name, expected, actual }) => `Failed ${name} check, expected ${expected}, got ${actual}.`)
46
+ .join(' ')}`,
47
+ actual: ['Run:', ...failed.map(({ name, actual }) => `${name}=${actual}`)].join('\n '),
48
+ expected: ['Run:', ...failed.map(({ name, expected }) => `${name}=${expected}`)].join('\n '),
203
49
  };
204
50
  },
205
51
  toStartWith: (received, prefix) => {
@@ -227,31 +73,4 @@ export const extendExpect = (expect) => {
227
73
  };
228
74
  return softExpect;
229
75
  };
230
- const isWithinInterval = (diffs, actual, options, intervalOption) => {
231
- const expected = options[intervalOption];
232
- if (expected === null) {
233
- // check is disabled if expected value is null
234
- return undefined;
235
- }
236
- if (typeof expected === 'number') {
237
- if (actual !== expected) {
238
- // eslint-disable-next-line no-param-reassign --- Don't want to touch this code :)
239
- diffs.pass = false;
240
- diffs.actual.push(`${intervalOption}=${actual}`);
241
- diffs.expected.push(`${intervalOption}=${expected}`);
242
- return false;
243
- }
244
- }
245
- else if (typeof expected === 'object') {
246
- const { min, max } = expected;
247
- if (actual === undefined || (min !== undefined && actual < min) || (max !== undefined && actual > max)) {
248
- // eslint-disable-next-line no-param-reassign
249
- diffs.pass = false;
250
- diffs.actual.push(`${intervalOption}=${actual}`);
251
- diffs.expected.push(`${intervalOption}=<${min ?? ''},${max ?? ''}>`);
252
- return false;
253
- }
254
- }
255
- return undefined;
256
- };
257
76
  //# sourceMappingURL=extend-expect.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"extend-expect.js","sourceRoot":"","sources":["../../lib/extend-expect.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"extend-expect.js","sourceRoot":"","sources":["../../lib/extend-expect.ts"],"names":[],"mappings":"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"}
package/dist/lib/lib.d.ts CHANGED
@@ -21,8 +21,7 @@ export declare const testActor: <T>(actorId: string, testName: string, fn: TestF
21
21
  * `callStandby` function, which calls the task's `standbyUrl`.
22
22
  *
23
23
  * Using task is just current shortcoming of standby feature but ideally we would use Actor directly
24
- */
25
- /**
24
+ *
26
25
  * @param actorId - The actor's raw platform ID or its full name (`owner/name`, e.g. `"apify/web-scraper"`).
27
26
  */
28
27
  export declare const testStandbyActor: <I = any, O = any>(actorId: string, testName: string, fn: TestFunction<{
@@ -1 +1 @@
1
- {"version":3,"file":"lib.d.ts","sourceRoot":"","sources":["../../lib/lib.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,YAAY,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AACtE,OAAO,EAA8B,YAAY,EAAsB,MAAM,QAAQ,CAAC;AAItF,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,KAAK,EAAc,gBAAgB,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAuB3E,OAAO,EAAE,YAAY,EAAE,CAAC;AAaxB;;;;;GAKG;AACH,eAAO,MAAM,QAAQ,GAAI,MAAM,MAAM,EAAE,KAAK,YAAY,CAAC,MAAM,CAAC,EAAE,UAAS,gBAAuC,SAEjH,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,SAAS,GAAI,CAAC,EACvB,SAAS,MAAM,EACf,UAAU,MAAM,EAChB,IAAI,YAAY,CAAC;IAAE,GAAG,EAAE,UAAU,CAAC,OAAO,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAAA;CAAE,CAAC,EACjE,cAAc,gBAAgB,SAgBjC,CAAC;AAEF;;;;;GAKG;AACH;;GAEG;AAEH,eAAO,MAAM,gBAAgB,GAAI,CAAC,GAAG,GAAG,EAAE,CAAC,GAAG,GAAG,EAC7C,SAAS,MAAM,EACf,UAAU,MAAM,EAChB,IAAI,YAAY,CAAC;IAAE,WAAW,EAAE,UAAU,CAAC,OAAO,oBAAoB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;CAAE,CAAC,EAChF,cAAc,gBAAgB,SA+BjC,CAAC;AAEF,eAAO,MAAM,aAAa,GAAI,CAAC,EAC3B,UAAU,MAAM,EAChB,IAAI,YAAY,CAAC;IAAE,GAAG,EAAE,UAAU,CAAC,OAAO,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAAA;CAAE,CAAC,SAYpE,CAAC;AAEF,eAAO,MAAM,EAAE,GArFW,CAAC,WACd,MAAM,YACL,MAAM,MACZ,YAAY,CAAC;IAAE,GAAG,EAAE,UAAU,CAAC,OAAO,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAAA;CAAE,CAAC,gBACnD,gBAAgB,SAiFP,CAAC;AAE5B;;;GAGG;AACH,QAAA,MAAM,oBAAoB,GAAI,CAAC,EAAE,CAAC,EAAE,aAAa,WAAW,EAAE,cAAc,WAAW,EAAE,UAAU,MAAM,MAmBvF,2BAIX,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,GAAG;IAAE,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CAAE;;;;EAmBxF,CAAC;AAEF,UAAU,WAAW;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;CAClB;AA6DD,QAAA,MAAM,gBAAgB,GAAI,CAAC,EAAE,SAAS,MAAM,EAAE,aAAa,WAAW,MAKpD,YAAY,UAAU,CAAC,CAAC,CAAC,2BAwC1C,CAAC;AAMF,4BAA4B;AAE5B,eAAO,MAAM,QAAQ;gCArDK,CAAC,WAAW,MAAM,eAAe,WAAW,MAKpD,YAAY,UAAU,CAAC,CAAC,CAAC;CAgDU,CAAC"}
1
+ {"version":3,"file":"lib.d.ts","sourceRoot":"","sources":["../../lib/lib.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,YAAY,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AACtE,OAAO,EAA8B,YAAY,EAAsB,MAAM,QAAQ,CAAC;AAItF,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,KAAK,EAAc,gBAAgB,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAuB3E,OAAO,EAAE,YAAY,EAAE,CAAC;AAaxB;;;;;GAKG;AACH,eAAO,MAAM,QAAQ,GAAI,MAAM,MAAM,EAAE,KAAK,YAAY,CAAC,MAAM,CAAC,EAAE,UAAS,gBAAuC,SAEjH,CAAC;AAsBF;;GAEG;AACH,eAAO,MAAM,SAAS,GAAI,CAAC,EACvB,SAAS,MAAM,EACf,UAAU,MAAM,EAChB,IAAI,YAAY,CAAC;IAAE,GAAG,EAAE,UAAU,CAAC,OAAO,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAAA;CAAE,CAAC,EACjE,cAAc,gBAAgB,SAKjC,CAAC;AAEF;;;;;;;GAOG;AAEH,eAAO,MAAM,gBAAgB,GAAI,CAAC,GAAG,GAAG,EAAE,CAAC,GAAG,GAAG,EAC7C,SAAS,MAAM,EACf,UAAU,MAAM,EAChB,IAAI,YAAY,CAAC;IAAE,WAAW,EAAE,UAAU,CAAC,OAAO,oBAAoB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;CAAE,CAAC,EAChF,cAAc,gBAAgB,SAmBjC,CAAC;AAEF,eAAO,MAAM,aAAa,GAAI,CAAC,EAC3B,UAAU,MAAM,EAChB,IAAI,YAAY,CAAC;IAAE,GAAG,EAAE,UAAU,CAAC,OAAO,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAAA;CAAE,CAAC,SAYpE,CAAC;AAEF,eAAO,MAAM,EAAE,GA7DW,CAAC,WACd,MAAM,YACL,MAAM,MACZ,YAAY,CAAC;IAAE,GAAG,EAAE,UAAU,CAAC,OAAO,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAAA;CAAE,CAAC,gBACnD,gBAAgB,SAyDP,CAAC;AAE5B;;;GAGG;AACH,QAAA,MAAM,oBAAoB,GAAI,CAAC,EAAE,CAAC,EAAE,aAAa,WAAW,EAAE,cAAc,WAAW,EAAE,UAAU,MAAM,MAmBvF,2BAIX,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,GAAG;IAAE,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CAAE;;;;EAmBxF,CAAC;AAEF,UAAU,WAAW;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;CAClB;AA6DD,QAAA,MAAM,gBAAgB,GAAI,CAAC,EAAE,SAAS,MAAM,EAAE,aAAa,WAAW,MAKpD,YAAY,UAAU,CAAC,CAAC,CAAC,2BAwC1C,CAAC;AAMF,4BAA4B;AAE5B,eAAO,MAAM,QAAQ;gCArDK,CAAC,WAAW,MAAM,eAAe,WAAW,MAKpD,YAAY,UAAU,CAAC,CAAC,CAAC;CAgDU,CAAC"}
package/dist/lib/lib.js CHANGED
@@ -42,21 +42,25 @@ export const describe = (name, fn, options = DEFAULT_TEST_OPTIONS) => {
42
42
  vitestDescribe.runIf(!!TESTER_APIFY_TOKEN || !!RUN_ALL_PLATFORM_TESTS)(name, options, fn);
43
43
  };
44
44
  /**
45
- * @param actorId - The actor's raw platform ID or its full name (`owner/name`, e.g. `"apify/web-scraper"`).
45
+ * Registers a vitest test for an Actor, which only runs when that Actor was built (or for the scheduled runs).
46
+ * `body` gets the test context with the soft `expect` and the full test name.
46
47
  */
47
- export const testActor = (actorId, testName, fn, testOptions) => {
48
+ const defineActorTest = (actorId, testName, testOptions, body) => {
48
49
  const options = { ...DEFAULT_TEST_OPTIONS, ...testOptions };
49
50
  const name = `${actorId}: ${testName}`;
50
51
  // `RUN_ALL_PLATFORM_TESTS` is needed for the scheduled tests, which have no `ACTOR_BUILDS` to match the
51
52
  // tests against - without it, every test would be filtered out as an actor we didn't build.
52
53
  const shouldRun = !!RUN_ALL_PLATFORM_TESTS || config.has(actorId);
53
54
  vitestTest.runIf(shouldRun)(name, options, async (context) => {
54
- const { expect, ...rest } = context;
55
- await fn({
56
- expect: extendExpect(expect),
57
- run: createStartRunFn(actorId, context),
58
- ...rest,
59
- });
55
+ await body({ ...context, expect: extendExpect(context.expect) }, name);
56
+ });
57
+ };
58
+ /**
59
+ * @param actorId - The actor's raw platform ID or its full name (`owner/name`, e.g. `"apify/web-scraper"`).
60
+ */
61
+ export const testActor = (actorId, testName, fn, testOptions) => {
62
+ defineActorTest(actorId, testName, testOptions, async (context) => {
63
+ await fn({ ...context, run: createStartRunFn(actorId, context) });
60
64
  });
61
65
  };
62
66
  /**
@@ -64,27 +68,16 @@ export const testActor = (actorId, testName, fn, testOptions) => {
64
68
  * `callStandby` function, which calls the task's `standbyUrl`.
65
69
  *
66
70
  * Using task is just current shortcoming of standby feature but ideally we would use Actor directly
67
- */
68
- /**
71
+ *
69
72
  * @param actorId - The actor's raw platform ID or its full name (`owner/name`, e.g. `"apify/web-scraper"`).
70
73
  */
71
74
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
72
75
  export const testStandbyActor = (actorId, testName, fn, testOptions) => {
73
- const options = { ...DEFAULT_TEST_OPTIONS, ...testOptions };
74
- const name = `${actorId}: ${testName}`;
75
- // `RUN_ALL_PLATFORM_TESTS` is needed for the scheduled tests, which have no `ACTOR_BUILDS` to match the
76
- // tests against - without it, every test would be filtered out as an actor we didn't build.
77
- const shouldRun = !!RUN_ALL_PLATFORM_TESTS || config.has(actorId);
78
- vitestTest.runIf(shouldRun)(name, options, async (context) => {
76
+ defineActorTest(actorId, testName, testOptions, async (context, name) => {
79
77
  const standbyTask = await createStandbyTask(actorId, config.get(actorId)?.buildNumber);
80
- const { expect, ...rest } = context;
81
78
  // NOTE: we wrap `fn` in try/finally so cleanup (deleting the task) always runs afterwards
82
79
  try {
83
- await fn({
84
- expect: extendExpect(expect),
85
- callStandby: createStartStandbyFn(standbyTask, context, name),
86
- ...rest,
87
- });
80
+ await fn({ ...context, callStandby: createStartStandbyFn(standbyTask, context, name) });
88
81
  }
89
82
  finally {
90
83
  const { taskId } = standbyTask;
@@ -1 +1 @@
1
- {"version":3,"file":"lib.js","sourceRoot":"","sources":["../../lib/lib.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAE3C,OAAO,EAAE,QAAQ,IAAI,cAAc,EAAgB,IAAI,IAAI,UAAU,EAAE,MAAM,QAAQ,CAAC;AAEtF,OAAO,EAAE,qBAAqB,EAAE,+BAA+B,EAAE,4BAA4B,EAAE,MAAM,aAAa,CAAC;AACnH,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAErD,OAAO,EAAE,sBAAsB,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AAE3D,MAAM,YAAY,GAAG,cAAc,CAAC;AACpC,IAAI,WAAW,GAAiB,EAAE,CAAC;AACnC,IAAI,CAAC;IACD,MAAM,cAAc,GAAG,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;IACjD,IAAI,cAAc,EAAE,CAAC;QACjB,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;QACzC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE,CAAC;YAC9B,MAAM,IAAI,KAAK,CAAC,GAAG,YAAY,kDAAkD,OAAO,WAAW,EAAE,CAAC,CAAC;QAC3G,CAAC;IACL,CAAC;AACL,CAAC;AAAC,OAAO,GAAG,EAAE,CAAC;IACX,MAAM,IAAI,KAAK,CAAC,iCAAiC,GAAG,EAAE,CAAC,CAAC;AAC5D,CAAC;AAED,MAAM,MAAM,GAAG,WAAW,CAAC,MAAM,CAA0B,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;IACpE,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,aAAa,EAAE,GAAG,CAAC,CAAC;IAChC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,UAAU,EAAE,GAAG,CAAC,CAAC;IAC7B,OAAO,GAAG,CAAC;AACf,CAAC,EAAE,IAAI,GAAG,EAAsB,CAAC,CAAC;AAIlC,MAAM,EAAE,kBAAkB,EAAE,sBAAsB,EAAE,GAAG,OAAO,CAAC,GAAG,CAAC;AACnE,MAAM,WAAW,GAAG,IAAI,WAAW,CAAC,EAAE,KAAK,EAAE,kBAAkB,EAAE,CAAC,CAAC;AAEnE,MAAM,oBAAoB,GAAqB;IAC3C,oCAAoC;IACpC,UAAU,EAAE,IAAI;IAChB,mCAAmC;IACnC,OAAO,EAAE,4BAA4B;IACrC,KAAK,EAAE,CAAC;CACX,CAAC;AAEF;;;;;GAKG;AACH,MAAM,CAAC,MAAM,QAAQ,GAAG,CAAC,IAAY,EAAE,EAAyB,EAAE,UAA4B,oBAAoB,EAAE,EAAE;IAClH,cAAc,CAAC,KAAK,CAAC,CAAC,CAAC,kBAAkB,IAAI,CAAC,CAAC,sBAAsB,CAAC,CAAC,IAAI,EAAE,OAAO,EAAE,EAAE,CAAC,CAAC;AAC9F,CAAC,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,MAAM,SAAS,GAAG,CACrB,OAAe,EACf,QAAgB,EAChB,EAAiE,EACjE,WAA8B,EAChC,EAAE;IACA,MAAM,OAAO,GAAG,EAAE,GAAG,oBAAoB,EAAE,GAAG,WAAW,EAAE,CAAC;IAE5D,MAAM,IAAI,GAAG,GAAG,OAAO,KAAK,QAAQ,EAAE,CAAC;IACvC,wGAAwG;IACxG,4FAA4F;IAC5F,MAAM,SAAS,GAAG,CAAC,CAAC,sBAAsB,IAAI,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IAClE,UAAU,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,IAAI,EAAE,OAAO,EAAE,KAAK,EAA4B,OAAa,EAAE,EAAE;QACzF,MAAM,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,GAAG,OAAO,CAAC;QACpC,MAAM,EAAE,CAAC;YACL,MAAM,EAAE,YAAY,CAAC,MAAM,CAAC;YAC5B,GAAG,EAAE,gBAAgB,CAAC,OAAO,EAAE,OAAO,CAAC;YACvC,GAAG,IAAI;SACV,CAAC,CAAC;IACP,CAAC,CAAC,CAAC;AACP,CAAC,CAAC;AAEF;;;;;GAKG;AACH;;GAEG;AACH,8DAA8D;AAC9D,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAC5B,OAAe,EACf,QAAgB,EAChB,EAAgF,EAChF,WAA8B,EAChC,EAAE;IACA,MAAM,OAAO,GAAG,EAAE,GAAG,oBAAoB,EAAE,GAAG,WAAW,EAAE,CAAC;IAE5D,MAAM,IAAI,GAAG,GAAG,OAAO,KAAK,QAAQ,EAAE,CAAC;IACvC,wGAAwG;IACxG,4FAA4F;IAC5F,MAAM,SAAS,GAAG,CAAC,CAAC,sBAAsB,IAAI,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IAElE,UAAU,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,IAAI,EAAE,OAAO,EAAE,KAAK,EAAyB,OAAU,EAAE,EAAE;QACnF,MAAM,WAAW,GAAG,MAAM,iBAAiB,CAAC,OAAO,EAAE,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,WAAW,CAAC,CAAC;QACvF,MAAM,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,GAAG,OAAO,CAAC;QAEpC,0FAA0F;QAC1F,IAAI,CAAC;YACD,MAAM,EAAE,CAAC;gBACL,MAAM,EAAE,YAAY,CAAC,MAAM,CAAC;gBAC5B,WAAW,EAAE,oBAAoB,CAAC,WAAW,EAAE,OAAO,EAAE,IAAI,CAAC;gBAC7D,GAAG,IAAI;aACV,CAAC,CAAC;QACP,CAAC;gBAAS,CAAC;YACP,MAAM,EAAE,MAAM,EAAE,GAAG,WAAW,CAAC;YAC/B,oDAAoD;YACpD,MAAM,WAAW;iBACZ,IAAI,CAAC,MAAM,CAAC;iBACZ,MAAM,EAAE;iBACR,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;gBACb,OAAO,CAAC,KAAK,CAAC,kCAAkC,MAAM,MAAM,KAAK,EAAE,CAAC,CAAC;YACzE,CAAC,CAAC,CAAC;QACX,CAAC;IACL,CAAC,CAAC,CAAC;AACP,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,aAAa,GAAG,CACzB,QAAgB,EAChB,EAAiE,EACnE,EAAE;IACA,UAAU,CAAC,QAAQ,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE;QACnC,MAAM,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,GAAG,OAAO,CAAC;QACpC,MAAM,EAAE,CAAC;YACL,MAAM,EAAE,YAAY,CAAC,MAAM,CAAC;YAC5B,sDAAsD;YACtD,gEAAgE;YAChE,GAAG,EAAE,GAAG,EAAE,GAAE,CAAC;YACb,GAAG,IAAI;SACV,CAAC,CAAC;IACP,CAAC,CAAC,CAAC;AACP,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,EAAE,GAAG,SAAS,CAAC;AAE5B;;;GAGG;AACH,MAAM,oBAAoB,GAAG,CAAO,WAAwB,EAAE,EAAE,QAAQ,EAAe,EAAE,QAAgB,EAAE,EAAE;IACzG,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,GAAG,WAAW,CAAC;IAC3C,MAAM,aAAa,GAAG,IAAI,GAAG,EAAU,CAAC;IAExC,uEAAuE;IACvE,yEAAyE;IACzE,8EAA8E;IAC9E,+DAA+D;IAC/D,MAAM,mBAAmB,GAAG,KAAK,IAAI,EAAE;QACnC,MAAM,IAAI,GAAG,CAAC,MAAM,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC;QAClE,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;YACrB,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC;gBAC7B,MAAM,OAAO,GAAG,eAAe,CAAC,GAAG,CAAC,CAAC;gBACrC,MAAM,QAAQ,CAAC,GAAG,QAAQ,MAAM,OAAO,EAAE,EAAE,UAAU,CAAC,CAAC;YAC3D,CAAC;YACD,aAAa,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAC9B,CAAC;IACL,CAAC,CAAC;IAEF,OAAO,KAAK,EAAE,EACV,KAAK,EACL,IAAI,GAAG,EAAE,EACT,OAAO,GAAG,EAAE,GACqE,EAAE,EAAE;QACrF,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,UAAU,GAAG,IAAI,EAAE;YAC5C,OAAO,EAAE;gBACL,GAAG,OAAO;gBACV,aAAa,EAAE,UAAU,WAAW,CAAC,KAAK,EAAE;aAC/C;YACD,MAAM,EAAE,MAAM;YACd,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC;SAC9B,CAAC,CAAC;QAEH,MAAM,mBAAmB,EAAE,CAAC;QAE5B,MAAM,IAAI,GAAG,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAM,CAAC;QAC1C,OAAO;YACH,IAAI;YACJ,MAAM,EAAE,QAAQ,CAAC,MAAM;YACvB,OAAO,EAAE,QAAQ,CAAC,OAAO;SAC5B,CAAC;IACN,CAAC,CAAC;AACN,CAAC,CAAC;AAOF;;;;GAIG;AACH,MAAM,iBAAiB,GAAG,KAAK,EAAE,OAAe,EAAE,WAAoB,EAAwB,EAAE;IAC5F,MAAM,KAAK,GAAG,WAAW,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IAEzC,MAAM,SAAS,GAAG,CAAC,MAAM,KAAK,CAAC,GAAG,EAAE,CAAoC,CAAC;IACzE,IAAI,CAAC,SAAS,EAAE,CAAC;QACb,MAAM,IAAI,KAAK,CAAC,UAAU,OAAO,aAAa,CAAC,CAAC;IACpD,CAAC;IAED,IAAI,CAAC,SAAS,CAAC,UAAU,EAAE,CAAC;QACxB,MAAM,IAAI,KAAK,CAAC,UAAU,OAAO,gCAAgC,CAAC,CAAC;IACvE,CAAC;IAED,IAAI,CAAC,SAAS,CAAC,YAAY,EAAE,CAAC;QAC1B,MAAM,IAAI,KAAK,CAAC,UAAU,OAAO,uCAAuC,CAAC,CAAC;IAC9E,CAAC;IACD,MAAM,EAAE,SAAS,EAAE,GAAG,mBAAmB,EAAE,GAAG,SAAS,CAAC,YAAY,CAAC;IACrE,OAAO,mBAAmB,CAAC,4BAA4B,CAAC;IAExD,MAAM,KAAK,GAAG,WAAW,IAAI,mBAAmB,CAAC,KAAK,CAAC;IAEvD,MAAM,mBAAmB,GAAiB;QACtC,GAAG,mBAAmB;QACtB,KAAK;KACR,CAAC;IAEF,IAAI,CAAC;QACD,MAAM,KAAK,GAAG,eAAe,KAAK,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QAClD,MAAM,iBAAiB,GAAG,EAAE,CAAC;QAC7B,wGAAwG;QACxG,MAAM,WAAW,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,iBAAiB,EAAE,GAAG,CAAC,CAAC;QACvF,MAAM,IAAI,GAAG,QAAQ,WAAW,CAAC,KAAK,CAAC,CAAC,EAAE,iBAAiB,CAAC,EAAE,CAAC;QAC/D,MAAM,OAAO,GAAG,CAAC,MAAM,WAAW,CAAC,KAAK,EAAE,CAAC,MAAM,CAAC;YAC9C,KAAK,EAAE,OAAO;YACd,YAAY,EAAE,mBAAmB;YACjC,WAAW,EAAE,oCAAoC,KAAK,cAAc,OAAO,GAAG;YAC9E,KAAK;YACL,IAAI;SACP,CAAC,CAAmC,CAAC;QAEtC,MAAM,EAAE,EAAE,EAAE,UAAU,EAAE,GAAG,OAAO,CAAC;QAEnC,IAAI,CAAC,UAAU,EAAE,CAAC;YACd,MAAM,IAAI,KAAK,CAAC,SAAS,EAAE,sCAAsC,CAAC,CAAC;QACvE,CAAC;QAED,OAAO;YACH,UAAU;YACV,MAAM,EAAE,EAAE;SACb,CAAC;IACN,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACb,MAAM,IAAI,KAAK,CAAC,0BAA0B,KAAK,EAAE,CAAC,CAAC;IACvD,CAAC;AACL,CAAC,CAAC;AAEF,MAAM,gBAAgB,GAAG,CAAI,OAAe,EAAE,WAAwB,EAAE,EAAE;IACtE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,GAAG,WAAW,CAAC;IACvC,MAAM,WAAW,GAAG,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IACxC,MAAM,KAAK,GAAG,WAAW,EAAE,WAAW,CAAC;IACvC,MAAM,OAAO,GAAG,WAAW,EAAE,OAAO,CAAC;IACrC,OAAO,KAAK,EAAE,UAAyB,EAAE,EAAE;QACvC,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,cAAc,EAAE,KAAK,EAAE,GAAG,UAAU,CAAC;QAE7D,IAAI,KAAK,EAAE,CAAC;YACR,MAAM,GAAG,GAAG,MAAM,WAAW,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,CAAC;YAC/C,IAAI,CAAC,GAAG,EAAE,CAAC;gBACP,MAAM,IAAI,KAAK,CAAC,gBAAgB,KAAK,iBAAiB,CAAC,CAAC;YAC5D,CAAC;YACD,OAAO,IAAI,aAAa,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC;QAC/C,CAAC;QAED,MAAM,UAAU,GAAG;YACf,GAAG,CAAC,cAAc,IAAI,CAAC,MAAM,sBAAsB,CAAC,WAAW,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC;YACpF,GAAG,KAAK;SACX,CAAC;QAEF,MAAM,KAAK,GAAG,WAAW,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QACzC,MAAM,SAAS,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE,CAAC;QACpC,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,CACpB,SAAS,EAAE,iBAAiB,EAAE,WAAW,IAAI,+BAA+B,EAC5E,+BAA+B,CAClC,CAAC;QAEF,MAAM,YAAY,GAAG,EAAE,OAAO,EAAE,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,OAAO,EAAE,CAAC;QAC/D,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,IAAI,CAAC,UAAU,EAAE,YAAY,CAAC,CAAC;QAEvD,MAAM,OAAO,GAAG,eAAe,CAAC,GAAG,CAAC,CAAC;QACrC,MAAM,QAAQ,CAAC,GAAG,IAAI,CAAC,IAAI,MAAM,OAAO,EAAE,EAAE,UAAU,CAAC,CAAC;QACxD,iDAAiD;QACjD,IAAI,CAAC,IAAI,GAAG;YACR,KAAK,EAAE,GAAG,CAAC,EAAE;YACb,OAAO;YACP,OAAO,EAAE,WAAW,EAAE,aAAa,IAAI,OAAO;SACjD,CAAC;QAEF,gGAAgG;QAChG,MAAM,KAAK,CAAC,qBAAqB,CAAC,CAAC;QAEnC,OAAO,IAAI,aAAa,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC;IAC/C,CAAC,CAAC;AACN,CAAC,CAAC;AAEF,MAAM,eAAe,GAAG,CAAC,GAAgC,EAAU,EAAE;IACjE,OAAO,uCAAuC,GAAG,CAAC,EAAE,EAAE,CAAC;AAC3D,CAAC,CAAC;AAEF,4BAA4B;AAC5B,gDAAgD;AAChD,MAAM,CAAC,MAAM,QAAQ,GAAG,EAAE,gBAAgB,EAAW,CAAC"}
1
+ {"version":3,"file":"lib.js","sourceRoot":"","sources":["../../lib/lib.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,14 @@
1
+ import type { RunTestResult } from './run-test-result.js';
2
+ import type { ToFinishWithOptions } from './types.js';
3
+ type Check = {
4
+ name: string;
5
+ pass: boolean;
6
+ actual: string;
7
+ expected: string;
8
+ };
9
+ /**
10
+ * Evaluates every `toFinishWith` expectation against the run, so a failing assertion reports all of them at once.
11
+ */
12
+ export declare const checkRun: <PpeEvent extends string>(run: RunTestResult, userOptions: ToFinishWithOptions<PpeEvent>) => Promise<Check[]>;
13
+ export {};
14
+ //# sourceMappingURL=run-checks.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"run-checks.d.ts","sourceRoot":"","sources":["../../lib/run-checks.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,KAAK,EAAY,mBAAmB,EAAE,MAAM,YAAY,CAAC;AAEhE,KAAK,KAAK,GAAG;IACT,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,OAAO,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;CACpB,CAAC;AA6CF;;GAEG;AACH,eAAO,MAAM,QAAQ,GAAU,QAAQ,SAAS,MAAM,EAClD,KAAK,aAAa,EAClB,aAAa,mBAAmB,CAAC,QAAQ,CAAC,KAC3C,OAAO,CAAC,KAAK,EAAE,CAwCjB,CAAC"}
@@ -0,0 +1,82 @@
1
+ import { TO_FINISH_WITH_OPTIONS } from './consts.js';
2
+ const isWithinInterval = (actual, interval) => {
3
+ if (typeof interval === 'number') {
4
+ return actual === interval;
5
+ }
6
+ const { min, max } = interval;
7
+ return actual !== undefined && (min === undefined || actual >= min) && (max === undefined || actual <= max);
8
+ };
9
+ const describeInterval = (interval) => {
10
+ return typeof interval === 'number' ? `${interval}` : `<${interval.min ?? ''},${interval.max ?? ''}>`;
11
+ };
12
+ const intervalCheck = (name, actual, interval) => {
13
+ // `null` disables the check, and so does an explicit `undefined`, e.g. from a caller forwarding an optional setting
14
+ if (interval == null) {
15
+ return [];
16
+ }
17
+ return [
18
+ {
19
+ name,
20
+ pass: isWithinInterval(actual, interval),
21
+ actual: `${actual}`,
22
+ expected: describeInterval(interval),
23
+ },
24
+ ];
25
+ };
26
+ const ppeChecks = (expected, actual = {}) => {
27
+ const events = new Set([...Object.keys(expected), ...Object.keys(actual)]);
28
+ return [...events].flatMap((event) => {
29
+ const name = `chargedEventCounts.${event}`;
30
+ // charged events the test didn't list are expected to not happen at all
31
+ if (!(event in expected)) {
32
+ return intervalCheck(name, actual[event], 0);
33
+ }
34
+ // an expected event that was never charged is a failure, even for an interval that includes 0
35
+ if (!(event in actual)) {
36
+ return [{ name, pass: false, actual: 'X', expected: describeInterval(expected[event]) }];
37
+ }
38
+ return intervalCheck(name, actual[event], expected[event]);
39
+ });
40
+ };
41
+ /**
42
+ * Evaluates every `toFinishWith` expectation against the run, so a failing assertion reports all of them at once.
43
+ */
44
+ export const checkRun = async (run, userOptions) => {
45
+ const options = { ...TO_FINISH_WITH_OPTIONS, ...userOptions };
46
+ // The dataset's item count lags the run by 10-20 seconds, so counting the downloaded items is the only way to
47
+ // be in sync. Don't swap it for the count from the dataset info.
48
+ const [runInfo, { items }, stats, log] = await Promise.all([
49
+ run.getRunInfo(),
50
+ run.getDataset(),
51
+ run.getStatistics(),
52
+ run.getLog(),
53
+ ]);
54
+ // the histogram has one bucket per retry count, so its length - 1 is the most retries any request needed
55
+ const maxRetriesPerRequest = (stats?.requestRetryHistogram ?? [0]).length - 1;
56
+ const occurredLogs = options.forbiddenLogs.filter((forbidden) => log.includes(forbidden));
57
+ return [
58
+ { name: 'status', pass: run.status === options.status, actual: run.status, expected: options.status },
59
+ ...intervalCheck('datasetItemCount', items.length, options.datasetItemCount),
60
+ ...intervalCheck('duration', runInfo.stats.durationMillis, options.duration),
61
+ ...intervalCheck('failedRequests', stats?.requestsFailed, options.failedRequests),
62
+ ...intervalCheck('requestsRetries', stats?.requestsRetries, options.requestsRetries),
63
+ ...(options.maxRetriesPerRequest == null
64
+ ? []
65
+ : [
66
+ {
67
+ name: 'maxRetriesPerRequest',
68
+ pass: maxRetriesPerRequest <= options.maxRetriesPerRequest,
69
+ actual: `${maxRetriesPerRequest}`,
70
+ expected: `<=${options.maxRetriesPerRequest}`,
71
+ },
72
+ ]),
73
+ ...(options.chargedEventCounts ? ppeChecks(options.chargedEventCounts, runInfo.chargedEventCounts) : []),
74
+ {
75
+ name: 'forbiddenLogs',
76
+ pass: occurredLogs.length === 0,
77
+ actual: `[${occurredLogs.join(', ')}]`,
78
+ expected: '[]',
79
+ },
80
+ ];
81
+ };
82
+ //# sourceMappingURL=run-checks.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"run-checks.js","sourceRoot":"","sources":["../../lib/run-checks.ts"],"names":[],"mappings":"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"}
@@ -3,18 +3,15 @@ import type { Dataset, SdkCrawlerStatistics } from './types.js';
3
3
  export declare class RunTestResult {
4
4
  private readonly apifyClient;
5
5
  private readonly run;
6
- private log;
7
- private dataset;
8
- private keyValueStoreClient;
9
- private statistics;
10
- private runInfo;
11
- private input;
12
6
  constructor(apifyClient: ApifyClient, run: ActorRun);
13
7
  getStatistics: () => Promise<SdkCrawlerStatistics | undefined>;
14
8
  getLog: () => Promise<string>;
9
+ private readonly datasetItems;
15
10
  getDataset: <T>() => Promise<Dataset<T>>;
16
11
  getKeyValueStoreClient: () => KeyValueStoreClient;
12
+ private readonly inputRecord;
17
13
  getInput: <T>() => Promise<T>;
14
+ /** Fetches the run again, so unlike `id` and `status` it also reflects what changed after the run finished. */
18
15
  getRunInfo: () => Promise<ActorRun>;
19
16
  get id(): string;
20
17
  get status(): string;
@@ -1 +1 @@
1
- {"version":3,"file":"run-test-result.d.ts","sourceRoot":"","sources":["../../lib/run-test-result.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,WAAW,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AAE/E,OAAO,KAAK,EAAE,OAAO,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAC;AAEhE,qBAAa,aAAa;IASlB,OAAO,CAAC,QAAQ,CAAC,WAAW;IAC5B,OAAO,CAAC,QAAQ,CAAC,GAAG;IATxB,OAAO,CAAC,GAAG,CAAqB;IAChC,OAAO,CAAC,OAAO,CAA+B;IAC9C,OAAO,CAAC,mBAAmB,CAAkC;IAC7D,OAAO,CAAC,UAAU,CAAmC;IACrD,OAAO,CAAC,OAAO,CAAuB;IACtC,OAAO,CAAC,KAAK,CAAsB;gBAGd,WAAW,EAAE,WAAW,EACxB,GAAG,EAAE,QAAQ;IAKlC,aAAa,QAAa,OAAO,CAAC,oBAAoB,GAAG,SAAS,CAAC,CAQjE;IAEF,MAAM,QAAa,OAAO,CAAC,MAAM,CAAC,CAOhC;IAEF,UAAU,GAAU,CAAC,OAAK,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAQ3C;IAEF,sBAAsB,QAAO,mBAAmB,CAO9C;IAEF,QAAQ,GAAU,CAAC,OAAK,OAAO,CAAC,CAAC,CAAC,CAQhC;IAEF,UAAU,QAAa,OAAO,CAAC,QAAQ,CAAC,CAOtC;IAEF,IAAI,EAAE,IAAI,MAAM,CAEf;IAED,IAAI,MAAM,IAAI,MAAM,CAEnB;CACJ"}
1
+ {"version":3,"file":"run-test-result.d.ts","sourceRoot":"","sources":["../../lib/run-test-result.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,WAAW,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AAE/E,OAAO,KAAK,EAAE,OAAO,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAC;AAoBhE,qBAAa,aAAa;IAElB,OAAO,CAAC,QAAQ,CAAC,WAAW;IAC5B,OAAO,CAAC,QAAQ,CAAC,GAAG;gBADH,WAAW,EAAE,WAAW,EACxB,GAAG,EAAE,QAAQ;IAKlC,aAAa,kDAGV;IAEH,MAAM,wBAEH;IAEH,OAAO,CAAC,QAAQ,CAAC,YAAY,CAU1B;IAEH,UAAU,GAAU,CAAC,OAAK,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAoD;IAEjG,sBAAsB,QAAO,mBAAmB,CAE9C;IAEF,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAqF;IAEjH,QAAQ,GAAU,CAAC,OAAK,OAAO,CAAC,CAAC,CAAC,CAAoC;IAEtE,+GAA+G;IAC/G,UAAU,0BAEP;IAEH,IAAI,EAAE,IAAI,MAAM,CAEf;IAED,IAAI,MAAM,IAAI,MAAM,CAEnB;CACJ"}