@untestutils/vitest 0.5.0 → 0.5.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.
- package/dist/fixtures.d.mts +34 -0
- package/dist/fixtures.d.ts +7 -5
- package/dist/fixtures.d.ts.map +1 -1
- package/dist/plugin.d.ts.map +1 -1
- package/package.json +16 -16
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import type { APIRequestContext, BrowserContext, Page, Response } from "playwright-core";
|
|
2
|
+
import { afterAll, afterEach, beforeAll, beforeEach, describe, type TestAPI } from "vitest";
|
|
3
|
+
import { type Recipe } from "@untestutils/core";
|
|
4
|
+
import { type HarnessBrowserName } from "./browsers.mjs";
|
|
5
|
+
export { afterAll, afterEach, beforeAll, beforeEach, describe };
|
|
6
|
+
export type { HarnessBrowserName } from "./browsers.mjs";
|
|
7
|
+
export { HARNESS_BROWSER_NAMES, normalizeHarnessBrowsers, resolveHarnessBrowserName } from "./browsers.mjs";
|
|
8
|
+
export interface HarnessFixtures {
|
|
9
|
+
/** Recipe id or Recipe — set via `test.override({ harness: 'site' })`. */
|
|
10
|
+
harness: string | Recipe | undefined;
|
|
11
|
+
/** Playwright engine — from `UNTESTUTILS_BROWSER` or plugin `browsers`. */
|
|
12
|
+
browserName: HarnessBrowserName;
|
|
13
|
+
page: Page;
|
|
14
|
+
goto: (path: string, options?: Record<string, unknown>) => Promise<Response | null>;
|
|
15
|
+
baseURL: string;
|
|
16
|
+
request: APIRequestContext;
|
|
17
|
+
}
|
|
18
|
+
type CookieInput = Parameters<BrowserContext["addCookies"]>[0][number];
|
|
19
|
+
type PlaywrightTestModule = typeof import("@playwright/test");
|
|
20
|
+
/** Rewrite cookies so `domain: 'localhost'` applies on 127.0.0.1 harness URLs. */
|
|
21
|
+
export declare function normalizeHarnessCookies(cookies: CookieInput[], baseURL: string): CookieInput[];
|
|
22
|
+
/** Prefer Playwright web-first expect when available. */
|
|
23
|
+
export declare function loadExpect(): Promise<PlaywrightTestModule["expect"]>;
|
|
24
|
+
export { expect } from "@playwright/test";
|
|
25
|
+
/**
|
|
26
|
+
* Builder `extend` (Vitest 4.1+) so types keep real fixture keys.
|
|
27
|
+
* Object `extend<HarnessFixtures>(…)` hits the wrong overload and emits
|
|
28
|
+
* `Record<HarnessFixtures, …>` — wiping `page`/`goto`/`harness` from context.
|
|
29
|
+
* Vitest has no Playwright `{ option: true }`; use `test.override({ harness })`.
|
|
30
|
+
*
|
|
31
|
+
* Asserted as `TestAPI<HarnessFixtures>` so published dts stays flat (builder
|
|
32
|
+
* otherwise nests `Omit & Record<"page", …> & { $__test?: … }` noise).
|
|
33
|
+
*/
|
|
34
|
+
export declare const test: TestAPI<HarnessFixtures>;
|
package/dist/fixtures.d.ts
CHANGED
|
@@ -17,7 +17,7 @@ export interface HarnessFixtures {
|
|
|
17
17
|
}
|
|
18
18
|
/** @internal */
|
|
19
19
|
export declare const browserApi: {
|
|
20
|
-
launch(name?: HarnessBrowserName)
|
|
20
|
+
launch: (name?: HarnessBrowserName) => Promise<Browser>;
|
|
21
21
|
};
|
|
22
22
|
/** @internal */
|
|
23
23
|
export declare function getBrowser(name?: HarnessBrowserName): Promise<Browser>;
|
|
@@ -26,10 +26,12 @@ export declare function resetBrowserPromise(): void;
|
|
|
26
26
|
/** @internal */
|
|
27
27
|
export declare function resolveBaseURL(): Promise<string>;
|
|
28
28
|
type CookieInput = Parameters<BrowserContext['addCookies']>[0][number];
|
|
29
|
+
type GotoFixture = (path: string, options?: Record<string, unknown>) => Promise<Response | null>;
|
|
30
|
+
type PlaywrightTestModule = typeof import('@playwright/test');
|
|
29
31
|
/** Rewrite cookies so `domain: 'localhost'` applies on 127.0.0.1 harness URLs. */
|
|
30
32
|
export declare function normalizeHarnessCookies(cookies: CookieInput[], baseURL: string): CookieInput[];
|
|
31
33
|
/** @internal */
|
|
32
|
-
export declare function createGoto(page: Page, baseURL: string):
|
|
34
|
+
export declare function createGoto(page: Page, baseURL: string): GotoFixture;
|
|
33
35
|
/** @internal */
|
|
34
36
|
export declare function waitForNuxt(page: Page, mode: 'hydration' | 'route'): Promise<void>;
|
|
35
37
|
/** @internal — body of the page fixture (callable from unit tests) */
|
|
@@ -37,11 +39,11 @@ export declare function usePageFixture(baseURL: string, use: (page: Page) => Pro
|
|
|
37
39
|
/** @internal */
|
|
38
40
|
export declare function useRequestFixture(baseURL: string, use: (ctx: APIRequestContext) => Promise<void>): Promise<void>;
|
|
39
41
|
/** @internal */
|
|
40
|
-
export declare function importRequestApi(): Promise<
|
|
42
|
+
export declare function importRequestApi(): Promise<PlaywrightTestModule['request']>;
|
|
41
43
|
/** Prefer Playwright web-first expect when available. */
|
|
42
|
-
export declare function loadExpect(): Promise<
|
|
44
|
+
export declare function loadExpect(): Promise<PlaywrightTestModule['expect']>;
|
|
43
45
|
/** @internal */
|
|
44
|
-
export declare function importExpectModule(): Promise<
|
|
46
|
+
export declare function importExpectModule(): Promise<PlaywrightTestModule>;
|
|
45
47
|
export { expect } from '@playwright/test';
|
|
46
48
|
/**
|
|
47
49
|
* Builder `extend` (Vitest 4.1+) so types keep real fixture keys.
|
package/dist/fixtures.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fixtures.d.ts","sourceRoot":"","sources":["../src/fixtures.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,OAAO,EAAE,cAAc,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAClG,OAAO,EACL,QAAQ,EACR,SAAS,EACT,SAAS,EACT,UAAU,EACV,QAAQ,EAER,KAAK,OAAO,EACb,MAAM,QAAQ,CAAC;AAChB,OAAO,EAAmD,KAAK,MAAM,EAAE,MAAM,mBAAmB,CAAC;AACjG,OAAO,EAAE,KAAK,kBAAkB,EAA6B,MAAM,YAAY,CAAC;AAEhF,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,SAAS,EAAE,UAAU,EAAE,QAAQ,EAAE,CAAC;AAChE,YAAY,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AACrD,OAAO,EACL,qBAAqB,EACrB,wBAAwB,EACxB,yBAAyB,GAC1B,MAAM,YAAY,CAAC;AAEpB,MAAM,WAAW,eAAe;IAC9B,0EAA0E;IAC1E,OAAO,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAAC;IACrC,2EAA2E;IAC3E,WAAW,EAAE,kBAAkB,CAAC;IAChC,IAAI,EAAE,IAAI,CAAC;IACX,IAAI,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,OAAO,CAAC,QAAQ,GAAG,IAAI,CAAC,CAAC;IACpF,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,iBAAiB,CAAC;CAC5B;AAID,gBAAgB;AAChB,eAAO,MAAM,UAAU;
|
|
1
|
+
{"version":3,"file":"fixtures.d.ts","sourceRoot":"","sources":["../src/fixtures.ts"],"names":[],"mappings":"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"}
|
package/dist/plugin.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"plugin.d.ts","sourceRoot":"","sources":["../src/plugin.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AACrC,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAEzC,OAAO,EAA8C,KAAK,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACpG,OAAO,EAEL,KAAK,2BAA2B,EAChC,KAAK,yBAAyB,EAC/B,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,KAAK,kBAAkB,EAA4B,MAAM,YAAY,CAAC;AAE/E,YAAY,EACV,2BAA2B,EAC3B,kBAAkB,EAClB,yBAAyB,GAC1B,MAAM,YAAY,CAAC;AACpB,OAAO,EACL,oBAAoB,EACpB,2BAA2B,EAC3B,8BAA8B,GAC/B,MAAM,YAAY,CAAC;AACpB,YAAY,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AACrD,OAAO,EACL,qBAAqB,EACrB,wBAAwB,EACxB,yBAAyB,GAC1B,MAAM,YAAY,CAAC;AAEpB,MAAM,WAAW,wBAAwB;IACvC;;;;OAIG;IACH,OAAO,CAAC,EAAE,cAAc,CAAC;IACzB;;;OAGG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IACnB,8DAA8D;IAC9D,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB;;;;OAIG;IACH,QAAQ,CAAC,EAAE,kBAAkB,EAAE,CAAC;IAChC;;;OAGG;IACH,QAAQ,CAAC,EAAE,OAAO,GAAG,2BAA2B,CAAC;CAClD;AAED,UAAU,YAAY;IACpB,IAAI,EAAE,MAAM,CAAC;IACb,eAAe,CAAC,EAAE,CAAC,GAAG,EAAE;QACtB,OAAO,EAAE;YACP,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG;gBAChC,QAAQ,CAAC,EAAE;oBAAE,UAAU,CAAC,EAAE,MAAM,CAAA;iBAAE,CAAC;gBACnC,WAAW,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;gBAChC,UAAU,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;gBAC/B,QAAQ,CAAC,EAAE,yBAAyB,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;aAChE,CAAC;SACH,CAAC;KACH,KAAK,IAAI,CAAC;CACZ;AAWD,qEAAqE;AACrE,eAAO,MAAM,WAAW
|
|
1
|
+
{"version":3,"file":"plugin.d.ts","sourceRoot":"","sources":["../src/plugin.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AACrC,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAEzC,OAAO,EAA8C,KAAK,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACpG,OAAO,EAEL,KAAK,2BAA2B,EAChC,KAAK,yBAAyB,EAC/B,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,KAAK,kBAAkB,EAA4B,MAAM,YAAY,CAAC;AAE/E,YAAY,EACV,2BAA2B,EAC3B,kBAAkB,EAClB,yBAAyB,GAC1B,MAAM,YAAY,CAAC;AACpB,OAAO,EACL,oBAAoB,EACpB,2BAA2B,EAC3B,8BAA8B,GAC/B,MAAM,YAAY,CAAC;AACpB,YAAY,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AACrD,OAAO,EACL,qBAAqB,EACrB,wBAAwB,EACxB,yBAAyB,GAC1B,MAAM,YAAY,CAAC;AAEpB,MAAM,WAAW,wBAAwB;IACvC;;;;OAIG;IACH,OAAO,CAAC,EAAE,cAAc,CAAC;IACzB;;;OAGG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IACnB,8DAA8D;IAC9D,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB;;;;OAIG;IACH,QAAQ,CAAC,EAAE,kBAAkB,EAAE,CAAC;IAChC;;;OAGG;IACH,QAAQ,CAAC,EAAE,OAAO,GAAG,2BAA2B,CAAC;CAClD;AAED,UAAU,YAAY;IACpB,IAAI,EAAE,MAAM,CAAC;IACb,eAAe,CAAC,EAAE,CAAC,GAAG,EAAE;QACtB,OAAO,EAAE;YACP,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG;gBAChC,QAAQ,CAAC,EAAE;oBAAE,UAAU,CAAC,EAAE,MAAM,CAAA;iBAAE,CAAC;gBACnC,WAAW,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;gBAChC,UAAU,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;gBAC/B,QAAQ,CAAC,EAAE,yBAAyB,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;aAChE,CAAC;SACH,CAAC;KACH,KAAK,IAAI,CAAC;CACZ;AAWD,qEAAqE;AACrE,eAAO,MAAM,WAAW,EAAE;IACxB,aAAa,EAAE,OAAO,aAAa,CAAC;IACpC,UAAU,EAAE,OAAO,UAAU,CAAC;IAC9B,aAAa,EAAE,OAAO,aAAa,CAAC;CAKrC,CAAC;AAEF,gBAAgB;AAChB,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,cAAc,GAAG,YAAY,GAAG,MAAM,CAsB5E;AAED;;GAEG;AACH,wBAAgB,WAAW,CAAC,OAAO,GAAE,wBAA6B,GAAG,YAAY,CA0DhF"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,13 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@untestutils/vitest",
|
|
3
|
-
"version": "0.5.
|
|
3
|
+
"version": "0.5.1",
|
|
4
|
+
"homepage": "https://s00d.github.io/untestutils/",
|
|
5
|
+
"license": "MIT",
|
|
6
|
+
"repository": {
|
|
7
|
+
"type": "git",
|
|
8
|
+
"url": "git+https://github.com/s00d/untestutils.git",
|
|
9
|
+
"directory": "packages/vitest"
|
|
10
|
+
},
|
|
4
11
|
"files": [
|
|
5
12
|
"dist"
|
|
6
13
|
],
|
|
@@ -8,6 +15,8 @@
|
|
|
8
15
|
"sideEffects": [
|
|
9
16
|
"./dist/setup-file.mjs"
|
|
10
17
|
],
|
|
18
|
+
"main": "./dist/index.mjs",
|
|
19
|
+
"types": "./dist/index.d.ts",
|
|
11
20
|
"exports": {
|
|
12
21
|
".": {
|
|
13
22
|
"types": "./dist/index.d.ts",
|
|
@@ -31,16 +40,19 @@
|
|
|
31
40
|
},
|
|
32
41
|
"./package.json": "./package.json"
|
|
33
42
|
},
|
|
43
|
+
"publishConfig": {
|
|
44
|
+
"access": "public"
|
|
45
|
+
},
|
|
34
46
|
"dependencies": {
|
|
35
47
|
"pathe": "^2.0.3",
|
|
36
|
-
"@untestutils/core": "0.5.
|
|
48
|
+
"@untestutils/core": "0.5.1"
|
|
37
49
|
},
|
|
38
50
|
"devDependencies": {
|
|
39
51
|
"@types/node": "^26.6.1",
|
|
52
|
+
"obuild": "^0.4.40",
|
|
40
53
|
"publint": "^0.3.24",
|
|
41
54
|
"typescript": "^6.0.3",
|
|
42
|
-
"vitest": "^5.0.1"
|
|
43
|
-
"obuild": "^0.4.40"
|
|
55
|
+
"vitest": "^5.0.1"
|
|
44
56
|
},
|
|
45
57
|
"peerDependencies": {
|
|
46
58
|
"@playwright/test": "^1.63.0",
|
|
@@ -61,18 +73,6 @@
|
|
|
61
73
|
"engines": {
|
|
62
74
|
"node": ">=20"
|
|
63
75
|
},
|
|
64
|
-
"license": "MIT",
|
|
65
|
-
"homepage": "https://s00d.github.io/untestutils/",
|
|
66
|
-
"repository": {
|
|
67
|
-
"type": "git",
|
|
68
|
-
"url": "git+https://github.com/s00d/untestutils.git",
|
|
69
|
-
"directory": "packages/vitest"
|
|
70
|
-
},
|
|
71
|
-
"main": "./dist/index.mjs",
|
|
72
|
-
"types": "./dist/index.d.ts",
|
|
73
|
-
"publishConfig": {
|
|
74
|
-
"access": "public"
|
|
75
|
-
},
|
|
76
76
|
"scripts": {
|
|
77
77
|
"build": "obuild && tsc -p tsconfig.build.json",
|
|
78
78
|
"publint": "publint --strict"
|