apify-test-tools 0.6.4-beta.3 → 0.7.1-beta.0
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/CHANGELOG.md +9 -2
- package/dist/lib/consts.d.ts +4 -0
- package/dist/lib/consts.d.ts.map +1 -1
- package/dist/lib/consts.js +4 -0
- package/dist/lib/consts.js.map +1 -1
- package/dist/lib/lib.d.ts.map +1 -1
- package/dist/lib/lib.js +4 -1
- package/dist/lib/lib.js.map +1 -1
- package/dist/lib/types.d.ts +8 -1
- package/dist/lib/types.d.ts.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/lib/consts.ts +5 -0
- package/lib/lib.ts +5 -2
- package/lib/types.ts +8 -1
- package/package.json +1 -1
package/lib/consts.ts
CHANGED
|
@@ -11,3 +11,8 @@ export const TO_FINISH_WITH_OPTIONS: ToFinishWithOptionsWithDefaults = {
|
|
|
11
11
|
maxRetriesPerRequest: null,
|
|
12
12
|
forbiddenLogs: ['ReferenceError', 'TypeError'],
|
|
13
13
|
};
|
|
14
|
+
|
|
15
|
+
/**
|
|
16
|
+
* Both the test runs and the vitest test specs should finish in this time - 1 hour
|
|
17
|
+
*/
|
|
18
|
+
export const DEFAULT_TEST_RUN_DURATION_MS = 60 * 60 * 1000; // 1 hour
|
package/lib/lib.ts
CHANGED
|
@@ -3,6 +3,7 @@ import { ApifyClient } from 'apify-client';
|
|
|
3
3
|
import type { SuiteFactory, TestContext, TestFunction } from 'vitest';
|
|
4
4
|
import { describe as vitestDescribe, ExpectStatic, test as vitestTest } from 'vitest';
|
|
5
5
|
|
|
6
|
+
import { DEFAULT_TEST_RUN_DURATION_MS } from './consts.js';
|
|
6
7
|
import { extendExpect } from './extend-expect.js';
|
|
7
8
|
import { RunTestResult } from './run-test-result.js';
|
|
8
9
|
import type { ActorBuild, ActorTestOptions, RunOptions } from './types.js';
|
|
@@ -37,7 +38,7 @@ const DEFAULT_TEST_OPTIONS: ActorTestOptions = {
|
|
|
37
38
|
// we want to run tests concurrently
|
|
38
39
|
concurrent: true,
|
|
39
40
|
// test should finish within 1 hour
|
|
40
|
-
timeout:
|
|
41
|
+
timeout: DEFAULT_TEST_RUN_DURATION_MS,
|
|
41
42
|
};
|
|
42
43
|
|
|
43
44
|
export const describe = (name: string, fn?: SuiteFactory<object>, options: ActorTestOptions = DEFAULT_TEST_OPTIONS) => {
|
|
@@ -46,6 +47,8 @@ export const describe = (name: string, fn?: SuiteFactory<object>, options: Actor
|
|
|
46
47
|
|
|
47
48
|
const DEFAULT_TEST_ACTOR_OPTIONS: ActorTestOptions = {
|
|
48
49
|
retry: 1,
|
|
50
|
+
// prevent orphaned runs
|
|
51
|
+
timeout: DEFAULT_TEST_RUN_DURATION_MS,
|
|
49
52
|
};
|
|
50
53
|
|
|
51
54
|
export const testActor = <T>(
|
|
@@ -124,7 +127,7 @@ export const testTestActor = <T>(
|
|
|
124
127
|
expect: extendExpect(expect),
|
|
125
128
|
// @ts-expect-error: this just to test custom matchers
|
|
126
129
|
// eslint-disable-next-line @typescript-eslint/no-empty-function
|
|
127
|
-
run: () => {
|
|
130
|
+
run: () => {},
|
|
128
131
|
...rest,
|
|
129
132
|
});
|
|
130
133
|
});
|
package/lib/types.ts
CHANGED
|
@@ -128,7 +128,7 @@ export interface ActorMatchers<R = unknown> {
|
|
|
128
128
|
hard: <T>(actual: T, message?: string) => Assertion;
|
|
129
129
|
}
|
|
130
130
|
|
|
131
|
-
export type ActorTestOptions = Omit<TestOptions, 'retry'> & {
|
|
131
|
+
export type ActorTestOptions = Omit<TestOptions, 'retry' | 'timeout'> & {
|
|
132
132
|
/**
|
|
133
133
|
* Times to retry the test if fails. Useful for making flaky tests more stable.
|
|
134
134
|
* When retries is up, the last test error will be thrown.
|
|
@@ -137,6 +137,13 @@ export type ActorTestOptions = Omit<TestOptions, 'retry'> & {
|
|
|
137
137
|
*/
|
|
138
138
|
// we are just extending the docs here to replace the default value, otherwise it's the exact same
|
|
139
139
|
retry?: TestOptions['retry'];
|
|
140
|
+
/**
|
|
141
|
+
* Timeout for the actor run in milliseconds. Zero value means there is no timeout.
|
|
142
|
+
* - If `undefined`, the run uses timeout of the default Actor run configuration.
|
|
143
|
+
*
|
|
144
|
+
* @default 60 * 60 * 1000 // 1 hour
|
|
145
|
+
*/
|
|
146
|
+
timeout?: ActorCallOptions['timeout'];
|
|
140
147
|
};
|
|
141
148
|
|
|
142
149
|
declare module 'vitest' {
|