@lingxia/test 0.18.0 → 0.20.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/dist/clock.d.ts +30 -0
- package/dist/clock.d.ts.map +1 -0
- package/dist/clock.js +99 -0
- package/dist/clock.js.map +1 -0
- package/dist/coverage.d.ts +25 -0
- package/dist/coverage.d.ts.map +1 -0
- package/dist/coverage.js +92 -0
- package/dist/coverage.js.map +1 -0
- package/dist/deadline.d.ts +82 -0
- package/dist/deadline.d.ts.map +1 -0
- package/dist/deadline.js +184 -0
- package/dist/deadline.js.map +1 -0
- package/dist/dialogs.d.ts +28 -0
- package/dist/dialogs.d.ts.map +1 -0
- package/dist/dialogs.js +74 -0
- package/dist/dialogs.js.map +1 -0
- package/dist/equal.d.ts +28 -0
- package/dist/equal.d.ts.map +1 -0
- package/dist/equal.js +149 -0
- package/dist/equal.js.map +1 -0
- package/dist/errors.d.ts +8 -0
- package/dist/errors.d.ts.map +1 -0
- package/dist/errors.js +37 -0
- package/dist/errors.js.map +1 -0
- package/dist/expect.d.ts +35 -7
- package/dist/expect.d.ts.map +1 -1
- package/dist/expect.js +216 -68
- package/dist/expect.js.map +1 -1
- package/dist/fixture.d.ts +201 -23
- package/dist/fixture.d.ts.map +1 -1
- package/dist/fixture.js +1127 -157
- package/dist/fixture.js.map +1 -1
- package/dist/format.d.ts +2 -0
- package/dist/format.d.ts.map +1 -1
- package/dist/format.js +78 -0
- package/dist/format.js.map +1 -1
- package/dist/host-types.d.ts +65 -0
- package/dist/host-types.d.ts.map +1 -0
- package/dist/host-types.js +2 -0
- package/dist/host-types.js.map +1 -0
- package/dist/host.d.ts +20 -0
- package/dist/host.d.ts.map +1 -1
- package/dist/host.js +33 -1
- package/dist/host.js.map +1 -1
- package/dist/ids.d.ts +14 -0
- package/dist/ids.d.ts.map +1 -1
- package/dist/ids.js +37 -2
- package/dist/ids.js.map +1 -1
- package/dist/index.d.ts +5 -7
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +3 -5
- package/dist/index.js.map +1 -1
- package/dist/json-result.d.ts +3 -0
- package/dist/json-result.d.ts.map +1 -0
- package/dist/json-result.js +62 -0
- package/dist/json-result.js.map +1 -0
- package/dist/junit.d.ts +1 -1
- package/dist/junit.d.ts.map +1 -1
- package/dist/junit.js +32 -4
- package/dist/junit.js.map +1 -1
- package/dist/locator.d.ts +87 -9
- package/dist/locator.d.ts.map +1 -1
- package/dist/locator.js +413 -86
- package/dist/locator.js.map +1 -1
- package/dist/mock.d.ts +43 -0
- package/dist/mock.d.ts.map +1 -0
- package/dist/mock.js +162 -0
- package/dist/mock.js.map +1 -0
- package/dist/network.d.ts +68 -0
- package/dist/network.d.ts.map +1 -0
- package/dist/network.js +287 -0
- package/dist/network.js.map +1 -0
- package/dist/openapi.d.ts +127 -0
- package/dist/openapi.d.ts.map +1 -0
- package/dist/openapi.js +414 -0
- package/dist/openapi.js.map +1 -0
- package/dist/pending.d.ts +84 -0
- package/dist/pending.d.ts.map +1 -0
- package/dist/pending.js +311 -0
- package/dist/pending.js.map +1 -0
- package/dist/redact.d.ts +41 -0
- package/dist/redact.d.ts.map +1 -0
- package/dist/redact.js +168 -0
- package/dist/redact.js.map +1 -0
- package/dist/remote.d.ts +32 -0
- package/dist/remote.d.ts.map +1 -0
- package/dist/remote.js +117 -0
- package/dist/remote.js.map +1 -0
- package/dist/report-extras.d.ts +16 -0
- package/dist/report-extras.d.ts.map +1 -0
- package/dist/report-extras.js +125 -0
- package/dist/report-extras.js.map +1 -0
- package/dist/report-types.d.ts +428 -0
- package/dist/report-types.d.ts.map +1 -0
- package/dist/report-types.js +6 -0
- package/dist/report-types.js.map +1 -0
- package/dist/report.d.ts +15 -1
- package/dist/report.d.ts.map +1 -1
- package/dist/report.js +195 -19
- package/dist/report.js.map +1 -1
- package/dist/runner.d.ts +13 -0
- package/dist/runner.d.ts.map +1 -0
- package/dist/runner.js +11 -0
- package/dist/runner.js.map +1 -0
- package/dist/runtime.d.ts +54 -4
- package/dist/runtime.d.ts.map +1 -1
- package/dist/runtime.js +1375 -97
- package/dist/runtime.js.map +1 -1
- package/dist/schema.d.ts +29 -0
- package/dist/schema.d.ts.map +1 -0
- package/dist/schema.js +463 -0
- package/dist/schema.js.map +1 -0
- package/dist/spec-api.d.ts +7 -2
- package/dist/spec-api.d.ts.map +1 -1
- package/dist/tags.d.ts +26 -0
- package/dist/tags.d.ts.map +1 -0
- package/dist/tags.js +78 -0
- package/dist/tags.js.map +1 -0
- package/dist/types.d.ts +852 -165
- package/dist/types.d.ts.map +1 -1
- package/dist/version.d.ts +1 -1
- package/dist/version.js +1 -1
- package/package.json +18 -5
- package/schemas/lxdev.schema.json +50 -0
- package/schemas/mock-config.schema.json +21 -0
- package/schemas/scenario.schema.json +180 -0
package/dist/host.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"host.js","sourceRoot":"","sources":["../src/host.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC1D,OAAO,EAAE,YAAY,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"host.js","sourceRoot":"","sources":["../src/host.ts"],"names":[],"mappings":"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"}
|
package/dist/ids.d.ts
CHANGED
|
@@ -20,6 +20,20 @@ export declare function isFrameworkFrame(file: string): boolean;
|
|
|
20
20
|
* so only the mapped path can tell them apart.
|
|
21
21
|
*/
|
|
22
22
|
export declare function resolveOrigin(frames: StackFrame[]): StackFrame;
|
|
23
|
+
/**
|
|
24
|
+
* The spec file a hook belongs to: the nearest authored frame in one of
|
|
25
|
+
* `specFiles`, so a hook registered by a shared helper is scoped to the spec
|
|
26
|
+
* file that called the helper, not to the helper's own file. Falls back to
|
|
27
|
+
* the first authored frame when no spec file is on the stack.
|
|
28
|
+
*/
|
|
29
|
+
export declare function resolveOwner(frames: StackFrame[], specFiles: ReadonlySet<string>): StackFrame;
|
|
30
|
+
/**
|
|
31
|
+
* A registration whose authored file cannot be told: in a bundled run its
|
|
32
|
+
* frame did not map back to a source file (it is still the bundle's), or the
|
|
33
|
+
* engine gave no stack at all. Its tags, hooks and id would silently fall
|
|
34
|
+
* back to "no file", so the run refuses it instead.
|
|
35
|
+
*/
|
|
36
|
+
export declare function isUnattributed(file: string): boolean;
|
|
23
37
|
export declare function callerLocation(): StackFrame;
|
|
24
38
|
/** Raw frames for a location that can only be resolved once the map exists. */
|
|
25
39
|
export declare function captureFrames(): StackFrame[];
|
package/dist/ids.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ids.d.ts","sourceRoot":"","sources":["../src/ids.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,wBAAgB,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAKnD;AAED,wBAAgB,SAAS,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAO3D;AAED,wBAAgB,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAI7C;AAED;;;;GAIG;AACH,wBAAgB,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,GAAG,UAAU,EAAE,CAgBnE;AAID,qEAAqE;AACrE,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAOtD;AAED;;;;GAIG;AACH,wBAAgB,aAAa,CAAC,MAAM,EAAE,UAAU,EAAE,GAAG,UAAU,CAQ9D;AAED,wBAAgB,cAAc,IAAI,UAAU,CAE3C;AAED,+EAA+E;AAC/E,wBAAgB,aAAa,IAAI,UAAU,EAAE,
|
|
1
|
+
{"version":3,"file":"ids.d.ts","sourceRoot":"","sources":["../src/ids.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,wBAAgB,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAKnD;AAED,wBAAgB,SAAS,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAO3D;AAED,wBAAgB,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAI7C;AAED;;;;GAIG;AACH,wBAAgB,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,GAAG,UAAU,EAAE,CAgBnE;AAID,qEAAqE;AACrE,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAOtD;AAED;;;;GAIG;AACH,wBAAgB,aAAa,CAAC,MAAM,EAAE,UAAU,EAAE,GAAG,UAAU,CAQ9D;AAED;;;;;GAKG;AACH,wBAAgB,YAAY,CAAC,MAAM,EAAE,UAAU,EAAE,EAAE,SAAS,EAAE,WAAW,CAAC,MAAM,CAAC,GAAG,UAAU,CAM7F;AAED;;;;;GAKG;AACH,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAEpD;AAED,wBAAgB,cAAc,IAAI,UAAU,CAE3C;AAED,+EAA+E;AAC/E,wBAAgB,aAAa,IAAI,UAAU,EAAE,CAW5C;AAED,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAMjD;AAED,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,CAKlF"}
|
package/dist/ids.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { remapPosition } from "./host.js";
|
|
1
|
+
import { hasBundleMap, remapPosition } from "./host.js";
|
|
2
2
|
export function isAsciiTitle(title) {
|
|
3
3
|
for (let i = 0; i < title.length; i += 1) {
|
|
4
4
|
if (title.charCodeAt(i) > 0x7f)
|
|
@@ -69,12 +69,47 @@ export function resolveOrigin(frames) {
|
|
|
69
69
|
}
|
|
70
70
|
return firstMapped ?? frames[0] ?? UNKNOWN;
|
|
71
71
|
}
|
|
72
|
+
/**
|
|
73
|
+
* The spec file a hook belongs to: the nearest authored frame in one of
|
|
74
|
+
* `specFiles`, so a hook registered by a shared helper is scoped to the spec
|
|
75
|
+
* file that called the helper, not to the helper's own file. Falls back to
|
|
76
|
+
* the first authored frame when no spec file is on the stack.
|
|
77
|
+
*/
|
|
78
|
+
export function resolveOwner(frames, specFiles) {
|
|
79
|
+
for (const frame of frames) {
|
|
80
|
+
const mapped = remapPosition(frame.file, frame.line, frame.column);
|
|
81
|
+
if (!isFrameworkFrame(mapped.file) && specFiles.has(mapped.file))
|
|
82
|
+
return mapped;
|
|
83
|
+
}
|
|
84
|
+
return resolveOrigin(frames);
|
|
85
|
+
}
|
|
86
|
+
/**
|
|
87
|
+
* A registration whose authored file cannot be told: in a bundled run its
|
|
88
|
+
* frame did not map back to a source file (it is still the bundle's), or the
|
|
89
|
+
* engine gave no stack at all. Its tags, hooks and id would silently fall
|
|
90
|
+
* back to "no file", so the run refuses it instead.
|
|
91
|
+
*/
|
|
92
|
+
export function isUnattributed(file) {
|
|
93
|
+
return hasBundleMap() && (file.startsWith("lxdev-test://") || file === UNKNOWN.file);
|
|
94
|
+
}
|
|
72
95
|
export function callerLocation() {
|
|
73
96
|
return resolveOrigin(parseFrames(new Error().stack));
|
|
74
97
|
}
|
|
75
98
|
/** Raw frames for a location that can only be resolved once the map exists. */
|
|
76
99
|
export function captureFrames() {
|
|
77
|
-
|
|
100
|
+
// V8 keeps 10 frames by default; a hook registered through a helper or two
|
|
101
|
+
// needs the spec file's frame further down to find its owner.
|
|
102
|
+
const errorCtor = Error;
|
|
103
|
+
const limit = errorCtor.stackTraceLimit;
|
|
104
|
+
if (typeof limit === "number" && limit < 50)
|
|
105
|
+
errorCtor.stackTraceLimit = 50;
|
|
106
|
+
try {
|
|
107
|
+
return parseFrames(new Error().stack);
|
|
108
|
+
}
|
|
109
|
+
finally {
|
|
110
|
+
if (typeof limit === "number" && limit < 50)
|
|
111
|
+
errorCtor.stackTraceLimit = limit;
|
|
112
|
+
}
|
|
78
113
|
}
|
|
79
114
|
export function stripFileUrl(path) {
|
|
80
115
|
if (path.startsWith("file://")) {
|
package/dist/ids.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ids.js","sourceRoot":"","sources":["../src/ids.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"ids.js","sourceRoot":"","sources":["../src/ids.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -1,9 +1,7 @@
|
|
|
1
|
-
export { spec, expect
|
|
2
|
-
export { AssertionError
|
|
1
|
+
export { spec, expect } from "./runtime.js";
|
|
2
|
+
export { AssertionError } from "./expect.js";
|
|
3
3
|
export { TimeoutError } from "./fixture.js";
|
|
4
|
-
export {
|
|
5
|
-
export {
|
|
6
|
-
export type {
|
|
7
|
-
export { VERSION, PACKAGE_NAME, DEFAULT_ACTION_TIMEOUT_MS, DEFAULT_SPEC_TIMEOUT_MS, } from "./version.js";
|
|
8
|
-
export type { Apps, AssertionRecord, AttachmentRef, CaseRecord, ExpectOptions, Fixture, FixtureExpect, JsonReport, RunMeta, LingxiaTestController, Locator, LocatorMatchers, LocatorOptions, Matchers, ProtocolReport, RejectExpected, RetryMatchers, SpecBody, SpecOptions, SpecStatus, StepRecord, TestApp, TestAutomation, TestPage, } from "./types.js";
|
|
4
|
+
export { TEST_ERROR_CODES } from "./errors.js";
|
|
5
|
+
export type { ActionOptions, AnyLogicPage, ArgOptions, EvalOptions, Expect, ExpectOptions, ExpectResult, FailOptions, FileOptions, Fixture, FunctionMatchers, InputOptions, JsonValue, Jsonable, Locator, LocatorFilterOptions, LocatorMatchers, LocatorState, LocatorWaitOptions, LogicApp, LogicFunction, LogicPage, LogicScope, Matchers, NavBackOptions, NavOptions, NavWaitOptions, NeedsMatcher, NetworkCall, OpenApiRun, ProfileCheckpoint, ProfileFixture, ProfileRestoreOptions, PromiseNotAllowed, RejectExpected, RestoreProfileOptions, RetryMatchers, ScenarioCallTarget, SpecBody, SpecOptions, SpecRequirements, SpecStart, StepScope, TestApp, TestPage, PageContract, PageSelector, PageBindOptions, UnaryActionsOnly, PageActionCalls, TestWindow, TestAutomation, TestClock, TestDialogs, TestErrorCode, AppErrorCodes, ExpectedErrorCode, TestLogic, TestScenarios, TestNav, TestNetwork, TestRoute, TestScenario, TestView, ViewDocument, ViewElement, ViewFunction, ViewScope, ViewWindow, WaitForCallOptions, WaitForOptions, } from "./types.js";
|
|
6
|
+
export type { ActionSheetAnswer, ActionSheetRecord, AutomationErrorCode, ClockAdvance, ClockState, ModalAnswer, ModalRecord, ToastRecord, } from "@lingxia/types/automation";
|
|
9
7
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAC5C,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAC5C,OAAO,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAC/C,YAAY,EACV,aAAa,EACb,YAAY,EACZ,UAAU,EACV,WAAW,EACX,MAAM,EACN,aAAa,EACb,YAAY,EACZ,WAAW,EACX,WAAW,EACX,OAAO,EACP,gBAAgB,EAChB,YAAY,EACZ,SAAS,EACT,QAAQ,EACR,OAAO,EACP,oBAAoB,EACpB,eAAe,EACf,YAAY,EACZ,kBAAkB,EAClB,QAAQ,EACR,aAAa,EACb,SAAS,EACT,UAAU,EACV,QAAQ,EACR,cAAc,EACd,UAAU,EACV,cAAc,EACd,YAAY,EACZ,WAAW,EACX,UAAU,EACV,iBAAiB,EACjB,cAAc,EACd,qBAAqB,EACrB,iBAAiB,EACjB,cAAc,EACd,qBAAqB,EACrB,aAAa,EACb,kBAAkB,EAClB,QAAQ,EACR,WAAW,EACX,gBAAgB,EAChB,SAAS,EACT,SAAS,EACT,OAAO,EACP,QAAQ,EACR,YAAY,EACZ,YAAY,EACZ,eAAe,EACf,gBAAgB,EAChB,eAAe,EACf,UAAU,EACV,cAAc,EACd,SAAS,EACT,WAAW,EACX,aAAa,EACb,aAAa,EACb,iBAAiB,EACjB,SAAS,EACT,aAAa,EACb,OAAO,EACP,WAAW,EACX,SAAS,EACT,YAAY,EACZ,QAAQ,EACR,YAAY,EACZ,WAAW,EACX,YAAY,EACZ,SAAS,EACT,UAAU,EACV,kBAAkB,EAClB,cAAc,GACf,MAAM,YAAY,CAAC;AACpB,YAAY,EACV,iBAAiB,EACjB,iBAAiB,EACjB,mBAAmB,EACnB,YAAY,EACZ,UAAU,EACV,WAAW,EACX,WAAW,EACX,WAAW,GACZ,MAAM,2BAA2B,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -1,7 +1,5 @@
|
|
|
1
|
-
export { spec, expect
|
|
2
|
-
export { AssertionError
|
|
1
|
+
export { spec, expect } from "./runtime.js";
|
|
2
|
+
export { AssertionError } from "./expect.js";
|
|
3
3
|
export { TimeoutError } from "./fixture.js";
|
|
4
|
-
export {
|
|
5
|
-
export { PUBLIC_CAPABILITIES } from "./inventory.js";
|
|
6
|
-
export { VERSION, PACKAGE_NAME, DEFAULT_ACTION_TIMEOUT_MS, DEFAULT_SPEC_TIMEOUT_MS, } from "./version.js";
|
|
4
|
+
export { TEST_ERROR_CODES } from "./errors.js";
|
|
7
5
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAC5C,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAC5C,OAAO,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"json-result.d.ts","sourceRoot":"","sources":["../src/json-result.ts"],"names":[],"mappings":"AAAA,+EAA+E;AAC/E,wBAAgB,UAAU,CAAC,KAAK,EAAE,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,SAAS,UAAO,EAAE,IAAI,SAAW,GAAG,OAAO,CAgDlG"}
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
/** Sent as source to Logic and WebViews: keep this function self-contained. */
|
|
2
|
+
export function jsonResult(value, api, allowVoid = true, path = "result") {
|
|
3
|
+
// A command can finish without a result. Nested undefined is never JSON.
|
|
4
|
+
if (value === undefined && allowVoid)
|
|
5
|
+
return undefined;
|
|
6
|
+
const seen = new Set();
|
|
7
|
+
const visit = (item, path) => {
|
|
8
|
+
const fail = (reason) => {
|
|
9
|
+
throw new TypeError(`${api}: ${path}: ${reason}; use JSON values${allowVoid ? " or no top-level result [E_NON_JSON_VALUE]" : ""}`);
|
|
10
|
+
};
|
|
11
|
+
if (item === null || typeof item === "string" || typeof item === "boolean")
|
|
12
|
+
return item;
|
|
13
|
+
if (typeof item === "number")
|
|
14
|
+
return Number.isFinite(item) ? item : fail("non-finite number");
|
|
15
|
+
if (typeof item !== "object")
|
|
16
|
+
return fail(`${typeof item} is not JSON`);
|
|
17
|
+
if (seen.has(item))
|
|
18
|
+
return fail("circular reference");
|
|
19
|
+
const array = Array.isArray(item);
|
|
20
|
+
const prototype = Object.getPrototypeOf(item);
|
|
21
|
+
if (!array && prototype !== Object.prototype && prototype !== null)
|
|
22
|
+
return fail("non-plain object is not JSON");
|
|
23
|
+
seen.add(item);
|
|
24
|
+
try {
|
|
25
|
+
if (array) {
|
|
26
|
+
const out = [];
|
|
27
|
+
for (let index = 0; index < item.length; index++) {
|
|
28
|
+
const descriptor = Object.getOwnPropertyDescriptor(item, String(index));
|
|
29
|
+
if (!descriptor || !("value" in descriptor))
|
|
30
|
+
return fail(`array index ${index} is missing or an accessor`);
|
|
31
|
+
out.push(visit(descriptor.value, `${path}[${index}]`));
|
|
32
|
+
}
|
|
33
|
+
// Extra array properties do not cross JSON either.
|
|
34
|
+
if (Reflect.ownKeys(item).some((key) => key !== "length" &&
|
|
35
|
+
!(typeof key === "string" && /^(0|[1-9][0-9]*)$/.test(key) && Number(key) < item.length))) {
|
|
36
|
+
return fail("array has non-index properties");
|
|
37
|
+
}
|
|
38
|
+
return out;
|
|
39
|
+
}
|
|
40
|
+
const out = {};
|
|
41
|
+
for (const key of Reflect.ownKeys(item)) {
|
|
42
|
+
const descriptor = Object.getOwnPropertyDescriptor(item, key);
|
|
43
|
+
if (!descriptor.enumerable)
|
|
44
|
+
continue;
|
|
45
|
+
if (typeof key !== "string")
|
|
46
|
+
return fail("symbol key is not JSON");
|
|
47
|
+
if (!("value" in descriptor))
|
|
48
|
+
return fail(`property ${key} is an accessor`);
|
|
49
|
+
Object.defineProperty(out, key, {
|
|
50
|
+
value: visit(descriptor.value, `${path}[${JSON.stringify(key)}]`),
|
|
51
|
+
enumerable: true, writable: true, configurable: true,
|
|
52
|
+
});
|
|
53
|
+
}
|
|
54
|
+
return out;
|
|
55
|
+
}
|
|
56
|
+
finally {
|
|
57
|
+
seen.delete(item);
|
|
58
|
+
}
|
|
59
|
+
};
|
|
60
|
+
return visit(value, path);
|
|
61
|
+
}
|
|
62
|
+
//# sourceMappingURL=json-result.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"json-result.js","sourceRoot":"","sources":["../src/json-result.ts"],"names":[],"mappings":"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"}
|
package/dist/junit.d.ts
CHANGED
package/dist/junit.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"junit.d.ts","sourceRoot":"","sources":["../src/junit.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAc,UAAU,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"junit.d.ts","sourceRoot":"","sources":["../src/junit.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAc,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAGhE;;;;GAIG;AACH,wBAAgB,WAAW,CAAC,MAAM,EAAE,UAAU,GAAG,MAAM,CAqBtD"}
|
package/dist/junit.js
CHANGED
|
@@ -23,7 +23,7 @@ export function renderJUnit(report) {
|
|
|
23
23
|
: "";
|
|
24
24
|
return `<?xml version="1.0" encoding="UTF-8"?>
|
|
25
25
|
<testsuites name="${attr(PACKAGE_NAME)}" tests="${report.total + errors}" failures="${failures}" errors="${errors}" skipped="${report.skipped}" time="${seconds(report.duration_ms)}">
|
|
26
|
-
${body}${interrupted}</testsuites>
|
|
26
|
+
${renderRunProperties(report)}${body}${interrupted}</testsuites>
|
|
27
27
|
`;
|
|
28
28
|
}
|
|
29
29
|
function renderSuite(name, cases, timestamp) {
|
|
@@ -37,7 +37,7 @@ ${body} </testsuite>
|
|
|
37
37
|
}
|
|
38
38
|
function renderCase(item, suite) {
|
|
39
39
|
const attrs = [
|
|
40
|
-
`name="${attr(item.title)}"`,
|
|
40
|
+
`name="${attr(item.title + (item.repeat === undefined ? "" : ` [repeat ${item.repeat}]`))}"`,
|
|
41
41
|
`classname="${attr(suite)}"`,
|
|
42
42
|
`time="${seconds(item.duration_ms)}"`,
|
|
43
43
|
item.file ? `file="${attr(item.file)}"` : "",
|
|
@@ -61,13 +61,41 @@ function renderCase(item, suite) {
|
|
|
61
61
|
if (item.status === "xfail") {
|
|
62
62
|
inner.push(` <system-out>${text("spec.fail: failed as declared")}</system-out>\n`);
|
|
63
63
|
}
|
|
64
|
-
|
|
65
|
-
|
|
64
|
+
const properties = [
|
|
65
|
+
...(item.covers.length > 0 ? [` <property name="covers" value="${attr(item.covers.join(" "))}"/>\n`] : []),
|
|
66
|
+
...(item.tags && item.tags.length > 0 ? [` <property name="tags" value="${attr(item.tags.join(" "))}"/>\n`] : []),
|
|
67
|
+
];
|
|
68
|
+
if (properties.length > 0) {
|
|
69
|
+
inner.push(` <properties>\n${properties.join("")} </properties>\n`);
|
|
66
70
|
}
|
|
67
71
|
return inner.length === 0
|
|
68
72
|
? ` <testcase ${attrs}/>\n`
|
|
69
73
|
: ` <testcase ${attrs}>\n${inner.join("")} </testcase>\n`;
|
|
70
74
|
}
|
|
75
|
+
/**
|
|
76
|
+
* Run-wide summaries as properties of the root: one per tag
|
|
77
|
+
* (`tag:<name>` = `passed=3 failed=1 …`), plus coverage and contract totals.
|
|
78
|
+
* Consumers that do not read root properties ignore them.
|
|
79
|
+
*/
|
|
80
|
+
function renderRunProperties(report) {
|
|
81
|
+
const properties = [];
|
|
82
|
+
for (const row of report.tag_summary ?? []) {
|
|
83
|
+
const counts = ["passed", "failed", "timeout", "xpass", "xfail", "skipped"]
|
|
84
|
+
.map((status) => `${status}=${row[status]}`).join(" ");
|
|
85
|
+
properties.push(`<property name="tag:${attr(row.tag)}" value="${attr(`total=${row.total} ${counts}`)}"/>`);
|
|
86
|
+
}
|
|
87
|
+
if (report.coverage) {
|
|
88
|
+
const coverage = report.coverage;
|
|
89
|
+
properties.push(`<property name="coverage" value="${attr(`covered=${coverage.covered}/${coverage.total} passing=${coverage.passing} failing=${coverage.failing} uncovered=${coverage.uncovered.length} unknown=${coverage.unknown.length}`)}"/>`);
|
|
90
|
+
}
|
|
91
|
+
if (report.openapi) {
|
|
92
|
+
const openapi = report.openapi;
|
|
93
|
+
properties.push(`<property name="openapi" value="${attr(`validated=${openapi.validated} routed_failed=${openapi.routed.failed} server_mismatched=${openapi.network.mismatched} unmatched=${openapi.unmatched.reduce((sum, entry) => sum + entry.count, 0)}`)}"/>`);
|
|
94
|
+
}
|
|
95
|
+
if (properties.length === 0)
|
|
96
|
+
return "";
|
|
97
|
+
return ` <properties>\n${properties.map((line) => ` ${line}\n`).join("")} </properties>\n`;
|
|
98
|
+
}
|
|
71
99
|
function graded(item) {
|
|
72
100
|
if (item.status === "skipped")
|
|
73
101
|
return "skipped";
|
package/dist/junit.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"junit.js","sourceRoot":"","sources":["../src/junit.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAE5C;;;;GAIG;AACH,MAAM,UAAU,WAAW,CAAC,MAAkB;IAC5C,MAAM,MAAM,GAAG,IAAI,GAAG,EAAwB,CAAC;IAC/C,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;QAChC,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,IAAI,OAAO,CAAC;QACnC,MAAM,MAAM,GAAG,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;QACtC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAClB,MAAM,CAAC,GAAG,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IAC3B,CAAC;IACD,MAAM,SAAS,GAAG,MAAM,CAAC,IAAI,EAAE,UAAU,IAAI,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;IACvE,MAAM,IAAI,GAAG,CAAC,GAAG,MAAM,CAAC,OAAO,EAAE,CAAC;SAC/B,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,WAAW,CAAC,IAAI,EAAE,KAAK,EAAE,SAAS,CAAC,CAAC;SAC3D,IAAI,CAAC,EAAE,CAAC,CAAC;IACZ,MAAM,QAAQ,GAAG,MAAM,CAAC,MAAM,GAAG,MAAM,CAAC,OAAO,GAAG,MAAM,CAAC,KAAK,CAAC;IAC/D,MAAM,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACtC,MAAM,WAAW,GAAG,MAAM,CAAC,OAAO;QAChC,CAAC,CAAC,sKAAsK;QACxK,CAAC,CAAC,EAAE,CAAC;IACP,OAAO;oBACW,IAAI,CAAC,YAAY,CAAC,YAAY,MAAM,CAAC,KAAK,GAAG,MAAM,eAAe,QAAQ,aAAa,MAAM,cAAc,MAAM,CAAC,OAAO,WAAW,OAAO,CAAC,MAAM,CAAC,WAAW,CAAC;EACjL,IAAI,GAAG,WAAW;
|
|
1
|
+
{"version":3,"file":"junit.js","sourceRoot":"","sources":["../src/junit.ts"],"names":[],"mappings":"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"}
|
package/dist/locator.d.ts
CHANGED
|
@@ -1,10 +1,13 @@
|
|
|
1
|
-
import
|
|
2
|
-
import type {
|
|
1
|
+
import { ActionDeadline } from "./deadline.js";
|
|
2
|
+
import type { ActionOptions, InputOptions, Locator, LocatorFilterOptions, LocatorWaitOptions, SourceLocation } from "./types.js";
|
|
3
|
+
import type { PageVisibility } from "./report-types.js";
|
|
3
4
|
export interface QueryMatch {
|
|
4
5
|
exists: boolean;
|
|
5
6
|
count: number;
|
|
6
7
|
index?: number;
|
|
7
8
|
visible?: boolean;
|
|
9
|
+
/** Rendered and intersecting the viewport. */
|
|
10
|
+
inViewport?: boolean;
|
|
8
11
|
text?: string;
|
|
9
12
|
value?: string | null;
|
|
10
13
|
enabled?: boolean;
|
|
@@ -14,6 +17,8 @@ export interface QueryMatch {
|
|
|
14
17
|
top: number;
|
|
15
18
|
width: number;
|
|
16
19
|
height: number;
|
|
20
|
+
viewportWidth?: number;
|
|
21
|
+
viewportHeight?: number;
|
|
17
22
|
};
|
|
18
23
|
items?: QueryMatch[];
|
|
19
24
|
}
|
|
@@ -33,12 +38,14 @@ export interface PageLike {
|
|
|
33
38
|
css: string;
|
|
34
39
|
page?: string;
|
|
35
40
|
index?: number;
|
|
41
|
+
force?: boolean;
|
|
36
42
|
}): Promise<void>;
|
|
37
43
|
fill(options: {
|
|
38
44
|
css: string;
|
|
39
45
|
text: string;
|
|
40
46
|
page?: string;
|
|
41
47
|
index?: number;
|
|
48
|
+
force?: boolean;
|
|
42
49
|
}): Promise<void>;
|
|
43
50
|
press?(options: {
|
|
44
51
|
css: string;
|
|
@@ -56,19 +63,39 @@ export interface PageLike {
|
|
|
56
63
|
export type Guard = <T>(op: () => T | Promise<T>) => Promise<T>;
|
|
57
64
|
/** Records one locator action in the report's trace. */
|
|
58
65
|
export type ActionRecorder = <T>(verb: string, detail: string, op: () => Promise<T>) => Promise<T>;
|
|
66
|
+
/** Milliseconds left in the spec (or cleanup) budget; bounds every action. */
|
|
67
|
+
export type BudgetRoom = () => number;
|
|
59
68
|
export interface LocatorResolve {
|
|
60
69
|
count: number;
|
|
61
70
|
visibleCount: number;
|
|
62
71
|
attached: boolean;
|
|
63
72
|
visible: boolean;
|
|
73
|
+
/** The unique match is rendered and intersects the viewport. */
|
|
74
|
+
inViewport: boolean;
|
|
64
75
|
text: string;
|
|
65
76
|
value: string | null;
|
|
66
77
|
index: number;
|
|
67
78
|
enabled?: boolean;
|
|
68
79
|
editable?: boolean;
|
|
69
80
|
rect?: QueryMatch["rect"];
|
|
81
|
+
/** Attribute values read for the single match, by name (`null`: absent). */
|
|
82
|
+
attributes?: Record<string, string | null>;
|
|
70
83
|
kind: "nothing" | "hidden" | "unique" | "many";
|
|
71
84
|
}
|
|
85
|
+
/** The page a locator reads (a live instance id; omitted: the current page) and its pick. */
|
|
86
|
+
export interface LocatorTarget {
|
|
87
|
+
page?: string;
|
|
88
|
+
/** Zero-based match index; omitted, the locator needs a unique match. */
|
|
89
|
+
index?: number;
|
|
90
|
+
}
|
|
91
|
+
/** Narrowing applied to the raw matches before `nth`/`first`/`last` picks one. */
|
|
92
|
+
export interface LocatorRefine {
|
|
93
|
+
hasText?: string | RegExp;
|
|
94
|
+
/** Pick the last match (`.last()`); `LocatorTarget.index` picks from the start. */
|
|
95
|
+
last?: boolean;
|
|
96
|
+
}
|
|
97
|
+
/** Marks a locator across module copies, so `expect(locator)` retries it. */
|
|
98
|
+
export declare const LOCATOR_BRAND: unique symbol;
|
|
72
99
|
export declare function testIdSelector(id: string): string;
|
|
73
100
|
export declare class PageLocator implements Locator {
|
|
74
101
|
private readonly page;
|
|
@@ -76,18 +103,69 @@ export declare class PageLocator implements Locator {
|
|
|
76
103
|
private readonly record;
|
|
77
104
|
private readonly location;
|
|
78
105
|
private readonly options;
|
|
106
|
+
private readonly room;
|
|
107
|
+
private readonly refine;
|
|
79
108
|
readonly selector: string;
|
|
80
|
-
|
|
109
|
+
readonly [LOCATOR_BRAND] = true;
|
|
110
|
+
constructor(page: PageLike, guard: Guard, record: ActionRecorder, selector: string, location: SourceLocation, options?: LocatorTarget, room?: BudgetRoom, refine?: LocatorRefine);
|
|
81
111
|
nth(index: number): Locator;
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
112
|
+
first(): Locator;
|
|
113
|
+
last(): Locator;
|
|
114
|
+
filter(options: LocatorFilterOptions): Locator;
|
|
115
|
+
press(key: string, options?: InputOptions): Promise<void>;
|
|
116
|
+
click(options?: ActionOptions): Promise<void>;
|
|
117
|
+
fill(text: string, options?: ActionOptions): Promise<void>;
|
|
118
|
+
type(text: string, options?: InputOptions): Promise<void>;
|
|
119
|
+
waitFor(options?: LocatorWaitOptions): Promise<void>;
|
|
120
|
+
count(): Promise<number>;
|
|
121
|
+
isVisible(): Promise<boolean>;
|
|
122
|
+
textContent(): Promise<string>;
|
|
123
|
+
inputValue(): Promise<string>;
|
|
124
|
+
getAttribute(name: string): Promise<string | null>;
|
|
125
|
+
/** A traced one-shot read. */
|
|
126
|
+
private read;
|
|
127
|
+
private single;
|
|
128
|
+
/**
|
|
129
|
+
* One read of the locator's matches. With a deadline the query is raced
|
|
130
|
+
* against what is left of it, so a query that never returns fails `verb`.
|
|
131
|
+
*/
|
|
132
|
+
resolve(deadline?: ActionDeadline, verb?: string, attributes?: readonly string[]): Promise<LocatorResolve>;
|
|
133
|
+
/** A read-only look at the single match's attributes. */
|
|
134
|
+
private readAttributes;
|
|
88
135
|
missText(resolved: LocatorResolve): string;
|
|
136
|
+
/** The page instance this locator is bound to; `null` for the current page. */
|
|
137
|
+
get boundPage(): string | null;
|
|
138
|
+
/** The page, selector and narrowing, as the trace and failures show it. */
|
|
139
|
+
describe(): string;
|
|
140
|
+
private inputDetail;
|
|
141
|
+
private target;
|
|
142
|
+
private where;
|
|
143
|
+
private callContext;
|
|
89
144
|
private actionability;
|
|
90
145
|
private act;
|
|
91
146
|
}
|
|
147
|
+
/** The probe's whole budget: a hidden page also throttles its timers. */
|
|
148
|
+
export declare const VISIBILITY_PROBE_BUDGET_MS = 1500;
|
|
149
|
+
/**
|
|
150
|
+
* Reads `document.visibilityState` and whether an animation frame arrives.
|
|
151
|
+
* WebKit stops animation frames for a page that is hidden or in a fully
|
|
152
|
+
* covered window, so rAF- and transition-driven UI (a sheet sliding in)
|
|
153
|
+
* never moves and actionability reads it as obscured.
|
|
154
|
+
*/
|
|
155
|
+
export declare const VISIBILITY_PROBE_SCRIPT = "new Promise((resolve) => {\n let done = false;\n const finish = (frame) => {\n if (done) return;\n done = true;\n resolve({ state: String(document.visibilityState || \"unknown\"), animationFrames: frame });\n };\n try { requestAnimationFrame(() => finish(true)); } catch (_) { finish(false); }\n setTimeout(() => finish(false), 300);\n})";
|
|
156
|
+
/**
|
|
157
|
+
* What the probe can say: what it observed, and what usually causes that. It
|
|
158
|
+
* cannot see the window, so the cause stays a likely one.
|
|
159
|
+
*/
|
|
160
|
+
export declare const HIDDEN_PAGE_NOTE = "page looked hidden or paused";
|
|
161
|
+
/** Why every page is hidden when the host can tell the screen is locked. */
|
|
162
|
+
export declare const SCREEN_LOCKED_NOTE = "the screen is locked; unlock it \u2014 animations and sheets are paused";
|
|
163
|
+
/** A hidden-page note, naming the lock when that is the cause. */
|
|
164
|
+
export declare function hiddenCause(note: string | undefined): string | undefined;
|
|
165
|
+
/** What the probe saw, or `undefined` for an unreadable answer. */
|
|
166
|
+
export declare function pageVisibility(value: unknown): PageVisibility | undefined;
|
|
167
|
+
/** Collapse every run of whitespace (newlines included) to one space and trim. */
|
|
168
|
+
export declare function normalizeText(value: string): string;
|
|
169
|
+
export declare function textMatches(text: string, expected: string | RegExp): boolean;
|
|
92
170
|
export declare function sleep(ms: number): Promise<void>;
|
|
93
171
|
//# sourceMappingURL=locator.d.ts.map
|
package/dist/locator.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"locator.d.ts","sourceRoot":"","sources":["../src/locator.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"locator.d.ts","sourceRoot":"","sources":["../src/locator.ts"],"names":[],"mappings":"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"}
|