doc-detective-common 4.19.0 → 4.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/index.cjs +86416 -6069
- package/dist/schemas/schemas.json +86416 -6069
- package/dist/types/generated/closeSurface_v3.d.ts +79 -13
- package/dist/types/generated/closeSurface_v3.d.ts.map +1 -1
- package/dist/types/generated/config_v3.d.ts +24 -0
- package/dist/types/generated/config_v3.d.ts.map +1 -1
- package/dist/types/generated/context_v3.d.ts +24 -0
- package/dist/types/generated/context_v3.d.ts.map +1 -1
- package/dist/types/generated/report_v3.d.ts +24 -0
- package/dist/types/generated/report_v3.d.ts.map +1 -1
- package/dist/types/generated/resolvedTests_v3.d.ts +48 -0
- package/dist/types/generated/resolvedTests_v3.d.ts.map +1 -1
- package/dist/types/generated/screenshot_v3.d.ts +40 -3
- package/dist/types/generated/screenshot_v3.d.ts.map +1 -1
- package/dist/types/generated/spec_v3.d.ts +24 -0
- package/dist/types/generated/spec_v3.d.ts.map +1 -1
- package/dist/types/generated/startSurface_v3.d.ts +108 -0
- package/dist/types/generated/startSurface_v3.d.ts.map +1 -0
- package/dist/types/generated/startSurface_v3.js +7 -0
- package/dist/types/generated/startSurface_v3.js.map +1 -0
- package/dist/types/generated/step_v3.d.ts +532 -107
- package/dist/types/generated/step_v3.d.ts.map +1 -1
- package/dist/types/generated/surface_v3.d.ts +35 -2
- package/dist/types/generated/surface_v3.d.ts.map +1 -1
- package/dist/types/generated/test_v3.d.ts +1837 -851
- package/dist/types/generated/test_v3.d.ts.map +1 -1
- package/dist/types/generated/type_v3.d.ts +60 -10
- package/dist/types/generated/type_v3.d.ts.map +1 -1
- package/dist/types/generated/waitUntil_v3.d.ts +22 -8
- package/dist/types/generated/waitUntil_v3.d.ts.map +1 -1
- package/package.json +1 -1
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
/**
|
|
6
6
|
* A step in a test.
|
|
7
7
|
*/
|
|
8
|
-
export type Step = (Common & CheckLink) | (Common1 & Click) | (Common2 & Find) | (Common3 & GoTo) | (Common4 & HttpRequest) | (Common5 & RunShell) | (Common6 & RunCode) | (Common7 & RunBrowserScript) | (Common8 & Type) | (Common9 & Screenshot) | (Common10 & SaveCookie) | (Common11 & Record) | (Common12 & StopRecord) | (Common13 & CloseSurface) | (Common14 &
|
|
8
|
+
export type Step = (Common & CheckLink) | (Common1 & Click) | (Common2 & Find) | (Common3 & GoTo) | (Common4 & HttpRequest) | (Common5 & RunShell) | (Common6 & RunCode) | (Common7 & RunBrowserScript) | (Common8 & Type) | (Common9 & Screenshot) | (Common10 & SaveCookie) | (Common11 & Record) | (Common12 & StopRecord) | (Common13 & CloseSurface) | (Common14 & StartSurface) | (Common15 & LoadVariables) | (Common16 & DragAndDrop) | (Common17 & LoadCookie) | (Common18 & Wait);
|
|
9
9
|
/**
|
|
10
10
|
* A condition expression, or an array of expressions combined with logical AND.
|
|
11
11
|
*/
|
|
@@ -497,14 +497,14 @@ export type TypeKeysSimple = string | string[];
|
|
|
497
497
|
export type TypeKeysDetailed = {
|
|
498
498
|
keys: TypeKeysSimple1;
|
|
499
499
|
/**
|
|
500
|
-
* Delay in milliseconds between each key press during a recording, and between each keystroke sent to a process surface.
|
|
500
|
+
* Delay in milliseconds between each key press during a recording, and between each keystroke sent to a process surface. Not applied on app surfaces in this phase — the native driver types the value atomically.
|
|
501
501
|
*/
|
|
502
502
|
inputDelay?: number;
|
|
503
503
|
surface?: Surface;
|
|
504
504
|
/**
|
|
505
|
-
* After sending the keys, wait until the surface is ready. Requires a `surface`; the allowed conditions depend on the surface kind: a process surface accepts `stdio`/`delayMs`, a browser surface accepts `networkIdleTime`/`domIdleTime`/`find`. No condition applies by default.
|
|
505
|
+
* After sending the keys, wait until the surface is ready. Requires a `surface`; the allowed conditions depend on the surface kind: a process surface accepts `stdio`/`delayMs`, a browser surface accepts `networkIdleTime`/`domIdleTime`/`find`, an app surface accepts `delayMs`/`find`. No condition applies by default.
|
|
506
506
|
*/
|
|
507
|
-
waitUntil?: ProcessReadiness | BrowserReadiness;
|
|
507
|
+
waitUntil?: ProcessReadiness | BrowserReadiness | AppReadiness;
|
|
508
508
|
/**
|
|
509
509
|
* Maximum time in milliseconds to wait for `waitUntil` after sending the keys.
|
|
510
510
|
*/
|
|
@@ -539,15 +539,15 @@ export type TypeKeysDetailed = {
|
|
|
539
539
|
* Computed accessible name of the element per ARIA specification. Supports exact match or regex pattern using /pattern/ syntax.
|
|
540
540
|
*/
|
|
541
541
|
elementAria?: string;
|
|
542
|
-
} & WaitUntilRequiresASurface & AProcessSurfaceForbidsElementTargeting & AProcessSurfaceTakesProcessReadiness & ABrowserSurfaceTakesBrowserReadiness & ABrowserEngineStringSurfaceTakesBrowserReadiness;
|
|
542
|
+
} & WaitUntilRequiresASurface & AProcessSurfaceForbidsElementTargeting & AProcessSurfaceTakesProcessReadiness & ABrowserSurfaceTakesBrowserReadiness & AnAppSurfaceTakesAppReadiness & ABrowserEngineStringSurfaceTakesBrowserReadiness;
|
|
543
543
|
/**
|
|
544
544
|
* Sequence of keys to enter.
|
|
545
545
|
*/
|
|
546
546
|
export type TypeKeysSimple1 = string | string[];
|
|
547
547
|
/**
|
|
548
|
-
* The surface a step acts on. Omit to act on the active surface. Supports background processes
|
|
548
|
+
* The surface a step acts on. Omit to act on the active surface. Supports background processes, browser windows/tabs, and native app windows.
|
|
549
549
|
*/
|
|
550
|
-
export type Surface = SurfaceByName | ProcessSurface | BrowserSurface2;
|
|
550
|
+
export type Surface = SurfaceByName | ProcessSurface | BrowserSurface2 | AppSurface;
|
|
551
551
|
/**
|
|
552
552
|
* Name of the surface. A browser engine keyword (chrome|firefox|safari|webkit|edge) targets that browser; any other string names a background process. To target a browser window or tab, use the object form ({ "browser": …, "window": …, "tab": … }) — a plain string is never a window/tab name.
|
|
553
553
|
*/
|
|
@@ -576,6 +576,30 @@ export type ByIndex5 = number;
|
|
|
576
576
|
* Name assigned when the window/tab was opened (goTo `newTab`/`newWindow`). The integer branch is listed first because Ajv validates with coerceTypes — string-first would coerce integer indexes into name strings.
|
|
577
577
|
*/
|
|
578
578
|
export type ByName5 = string;
|
|
579
|
+
/**
|
|
580
|
+
* Which app window to act on. Omit to use the active window. Apps have windows, no tabs.
|
|
581
|
+
*/
|
|
582
|
+
export type AppWindowSelector = ByIndex6 | ByName6 | ByCriteria6;
|
|
583
|
+
/**
|
|
584
|
+
* Index in creation order. Negative counts from the end; `-1` is the newest (e.g. a dialog the app just opened).
|
|
585
|
+
*/
|
|
586
|
+
export type ByIndex6 = number;
|
|
587
|
+
/**
|
|
588
|
+
* Assigned window name. The integer branch is listed first because Ajv validates with coerceTypes — string-first would coerce integer indexes into name strings.
|
|
589
|
+
*/
|
|
590
|
+
export type ByName6 = string;
|
|
591
|
+
/**
|
|
592
|
+
* Wait for a specific element to be present. At least one finding field must be specified.
|
|
593
|
+
*/
|
|
594
|
+
export type ElementCriteria = {
|
|
595
|
+
[k: string]: unknown;
|
|
596
|
+
};
|
|
597
|
+
/**
|
|
598
|
+
* Wait for a specific element to be present. At least one finding field must be specified.
|
|
599
|
+
*/
|
|
600
|
+
export type ElementCriteria1 = {
|
|
601
|
+
[k: string]: unknown;
|
|
602
|
+
};
|
|
579
603
|
/**
|
|
580
604
|
* A condition expression, or an array of expressions combined with logical AND.
|
|
581
605
|
*/
|
|
@@ -616,6 +640,7 @@ export type Screenshot1 = ScreenshotSimple | CaptureScreenshotDetailed | Capture
|
|
|
616
640
|
* File path of the PNG file. Accepts absolute paths. If not specified, the file name is the ID of the step. If an `http(s)` URL is supplied, the remote image is downloaded and used as a read-only reference for comparison; the new capture is written to a local run-specific folder instead of being uploaded back to the URL.
|
|
617
641
|
*/
|
|
618
642
|
export type ScreenshotSimple = string;
|
|
643
|
+
export type CaptureScreenshotDetailed = CaptureScreenshotFields & AppCapturesDonTSupportCropYet;
|
|
619
644
|
/**
|
|
620
645
|
* Browser engine keyword. Targets that browser. Steps that can only ever act on a browser (not a background process) restrict the bare-string form to this enum, so a process name here is rejected at validation time instead of failing at runtime.
|
|
621
646
|
*/
|
|
@@ -623,27 +648,39 @@ export type SurfaceByBrowserEngine2 = "chrome" | "firefox" | "safari" | "webkit"
|
|
|
623
648
|
/**
|
|
624
649
|
* Which window to act on. Omit to use the active window.
|
|
625
650
|
*/
|
|
626
|
-
export type WindowTabSelector6 =
|
|
651
|
+
export type WindowTabSelector6 = ByIndex7 | ByName7 | ByCriteria7;
|
|
627
652
|
/**
|
|
628
653
|
* Index in creation order. Negative counts from the end; `-1` is the newest.
|
|
629
654
|
*/
|
|
630
|
-
export type
|
|
655
|
+
export type ByIndex7 = number;
|
|
631
656
|
/**
|
|
632
657
|
* Name assigned when the window/tab was opened (goTo `newTab`/`newWindow`). The integer branch is listed first because Ajv validates with coerceTypes — string-first would coerce integer indexes into name strings.
|
|
633
658
|
*/
|
|
634
|
-
export type
|
|
659
|
+
export type ByName7 = string;
|
|
635
660
|
/**
|
|
636
661
|
* Which tab to act on. Omit to use the active tab. Without `window`, the selector searches every tab in creation order — including tabs the page opened itself.
|
|
637
662
|
*/
|
|
638
|
-
export type WindowTabSelector7 =
|
|
663
|
+
export type WindowTabSelector7 = ByIndex8 | ByName8 | ByCriteria8;
|
|
639
664
|
/**
|
|
640
665
|
* Index in creation order. Negative counts from the end; `-1` is the newest.
|
|
641
666
|
*/
|
|
642
|
-
export type
|
|
667
|
+
export type ByIndex8 = number;
|
|
643
668
|
/**
|
|
644
669
|
* Name assigned when the window/tab was opened (goTo `newTab`/`newWindow`). The integer branch is listed first because Ajv validates with coerceTypes — string-first would coerce integer indexes into name strings.
|
|
645
670
|
*/
|
|
646
|
-
export type
|
|
671
|
+
export type ByName8 = string;
|
|
672
|
+
/**
|
|
673
|
+
* Which app window to act on. Omit to use the active window. Apps have windows, no tabs.
|
|
674
|
+
*/
|
|
675
|
+
export type AppWindowSelector1 = ByIndex9 | ByName9 | ByCriteria9;
|
|
676
|
+
/**
|
|
677
|
+
* Index in creation order. Negative counts from the end; `-1` is the newest (e.g. a dialog the app just opened).
|
|
678
|
+
*/
|
|
679
|
+
export type ByIndex9 = number;
|
|
680
|
+
/**
|
|
681
|
+
* Assigned window name. The integer branch is listed first because Ajv validates with coerceTypes — string-first would coerce integer indexes into name strings.
|
|
682
|
+
*/
|
|
683
|
+
export type ByName9 = string;
|
|
647
684
|
/**
|
|
648
685
|
* File path of the PNG file. Accepts absolute paths. If not specified, the file name is the ID of the step. If an `http(s)` URL is supplied, the remote image is downloaded and used as a read-only reference for comparison; the new capture is written to a local run-specific folder instead of being uploaded back to the URL.
|
|
649
686
|
*/
|
|
@@ -752,27 +789,27 @@ export type SurfaceByBrowserEngine3 = "chrome" | "firefox" | "safari" | "webkit"
|
|
|
752
789
|
/**
|
|
753
790
|
* Which window to act on. Omit to use the active window.
|
|
754
791
|
*/
|
|
755
|
-
export type WindowTabSelector8 =
|
|
792
|
+
export type WindowTabSelector8 = ByIndex10 | ByName10 | ByCriteria10;
|
|
756
793
|
/**
|
|
757
794
|
* Index in creation order. Negative counts from the end; `-1` is the newest.
|
|
758
795
|
*/
|
|
759
|
-
export type
|
|
796
|
+
export type ByIndex10 = number;
|
|
760
797
|
/**
|
|
761
798
|
* Name assigned when the window/tab was opened (goTo `newTab`/`newWindow`). The integer branch is listed first because Ajv validates with coerceTypes — string-first would coerce integer indexes into name strings.
|
|
762
799
|
*/
|
|
763
|
-
export type
|
|
800
|
+
export type ByName10 = string;
|
|
764
801
|
/**
|
|
765
802
|
* Which tab to act on. Omit to use the active tab. Without `window`, the selector searches every tab in creation order — including tabs the page opened itself.
|
|
766
803
|
*/
|
|
767
|
-
export type WindowTabSelector9 =
|
|
804
|
+
export type WindowTabSelector9 = ByIndex11 | ByName11 | ByCriteria11;
|
|
768
805
|
/**
|
|
769
806
|
* Index in creation order. Negative counts from the end; `-1` is the newest.
|
|
770
807
|
*/
|
|
771
|
-
export type
|
|
808
|
+
export type ByIndex11 = number;
|
|
772
809
|
/**
|
|
773
810
|
* Name assigned when the window/tab was opened (goTo `newTab`/`newWindow`). The integer branch is listed first because Ajv validates with coerceTypes — string-first would coerce integer indexes into name strings.
|
|
774
811
|
*/
|
|
775
|
-
export type
|
|
812
|
+
export type ByName11 = string;
|
|
776
813
|
/**
|
|
777
814
|
* Recording engine to use. Either a string shorthand selecting the engine with defaults, or an object for full control. If unset, defaults to the `browser` engine when a visible Chrome context is available and to `ffmpeg` otherwise.
|
|
778
815
|
*/
|
|
@@ -866,13 +903,13 @@ export type Routing55 = {
|
|
|
866
903
|
[k: string]: unknown;
|
|
867
904
|
};
|
|
868
905
|
/**
|
|
869
|
-
* Close one or more surfaces: background processes,
|
|
906
|
+
* Close one or more surfaces: background processes, browser windows/tabs or whole browser sessions, and native app surfaces. A browser reference with a `tab` selector closes that tab; with a `window` selector it closes the window and its tabs; with neither it closes the whole browser session. An app reference ({ "app": … }) closes the app surface, terminating the app when Doc Detective launched it. Closing a surface that is not open is a no-op (PASS). Renames `stopProcess`.
|
|
870
907
|
*/
|
|
871
908
|
export type CloseSurface1 = Surface1 | [Surface2, ...Surface2[]];
|
|
872
909
|
/**
|
|
873
|
-
* The surface a step acts on. Omit to act on the active surface. Supports background processes
|
|
910
|
+
* The surface a step acts on. Omit to act on the active surface. Supports background processes, browser windows/tabs, and native app windows.
|
|
874
911
|
*/
|
|
875
|
-
export type Surface1 = SurfaceByName1 | ProcessSurface1 | BrowserSurface5;
|
|
912
|
+
export type Surface1 = SurfaceByName1 | ProcessSurface1 | BrowserSurface5 | AppSurface2;
|
|
876
913
|
/**
|
|
877
914
|
* Name of the surface. A browser engine keyword (chrome|firefox|safari|webkit|edge) targets that browser; any other string names a background process. To target a browser window or tab, use the object form ({ "browser": …, "window": …, "tab": … }) — a plain string is never a window/tab name.
|
|
878
915
|
*/
|
|
@@ -880,31 +917,43 @@ export type SurfaceByName1 = string;
|
|
|
880
917
|
/**
|
|
881
918
|
* Which window to act on. Omit to use the active window.
|
|
882
919
|
*/
|
|
883
|
-
export type WindowTabSelector10 =
|
|
920
|
+
export type WindowTabSelector10 = ByIndex12 | ByName12 | ByCriteria12;
|
|
884
921
|
/**
|
|
885
922
|
* Index in creation order. Negative counts from the end; `-1` is the newest.
|
|
886
923
|
*/
|
|
887
|
-
export type
|
|
924
|
+
export type ByIndex12 = number;
|
|
888
925
|
/**
|
|
889
926
|
* Name assigned when the window/tab was opened (goTo `newTab`/`newWindow`). The integer branch is listed first because Ajv validates with coerceTypes — string-first would coerce integer indexes into name strings.
|
|
890
927
|
*/
|
|
891
|
-
export type
|
|
928
|
+
export type ByName12 = string;
|
|
892
929
|
/**
|
|
893
930
|
* Which tab to act on. Omit to use the active tab. Without `window`, the selector searches every tab in creation order — including tabs the page opened itself.
|
|
894
931
|
*/
|
|
895
|
-
export type WindowTabSelector11 =
|
|
932
|
+
export type WindowTabSelector11 = ByIndex13 | ByName13 | ByCriteria13;
|
|
896
933
|
/**
|
|
897
934
|
* Index in creation order. Negative counts from the end; `-1` is the newest.
|
|
898
935
|
*/
|
|
899
|
-
export type
|
|
936
|
+
export type ByIndex13 = number;
|
|
900
937
|
/**
|
|
901
938
|
* Name assigned when the window/tab was opened (goTo `newTab`/`newWindow`). The integer branch is listed first because Ajv validates with coerceTypes — string-first would coerce integer indexes into name strings.
|
|
902
939
|
*/
|
|
903
|
-
export type
|
|
940
|
+
export type ByName13 = string;
|
|
941
|
+
/**
|
|
942
|
+
* Which app window to act on. Omit to use the active window. Apps have windows, no tabs.
|
|
943
|
+
*/
|
|
944
|
+
export type AppWindowSelector2 = ByIndex14 | ByName14 | ByCriteria14;
|
|
945
|
+
/**
|
|
946
|
+
* Index in creation order. Negative counts from the end; `-1` is the newest (e.g. a dialog the app just opened).
|
|
947
|
+
*/
|
|
948
|
+
export type ByIndex14 = number;
|
|
904
949
|
/**
|
|
905
|
-
*
|
|
950
|
+
* Assigned window name. The integer branch is listed first because Ajv validates with coerceTypes — string-first would coerce integer indexes into name strings.
|
|
906
951
|
*/
|
|
907
|
-
export type
|
|
952
|
+
export type ByName14 = string;
|
|
953
|
+
/**
|
|
954
|
+
* The surface a step acts on. Omit to act on the active surface. Supports background processes, browser windows/tabs, and native app windows.
|
|
955
|
+
*/
|
|
956
|
+
export type Surface2 = SurfaceByName2 | ProcessSurface2 | BrowserSurface6 | AppSurface3;
|
|
908
957
|
/**
|
|
909
958
|
* Name of the surface. A browser engine keyword (chrome|firefox|safari|webkit|edge) targets that browser; any other string names a background process. To target a browser window or tab, use the object form ({ "browser": …, "window": …, "tab": … }) — a plain string is never a window/tab name.
|
|
910
959
|
*/
|
|
@@ -912,27 +961,39 @@ export type SurfaceByName2 = string;
|
|
|
912
961
|
/**
|
|
913
962
|
* Which window to act on. Omit to use the active window.
|
|
914
963
|
*/
|
|
915
|
-
export type WindowTabSelector12 =
|
|
964
|
+
export type WindowTabSelector12 = ByIndex15 | ByName15 | ByCriteria15;
|
|
916
965
|
/**
|
|
917
966
|
* Index in creation order. Negative counts from the end; `-1` is the newest.
|
|
918
967
|
*/
|
|
919
|
-
export type
|
|
968
|
+
export type ByIndex15 = number;
|
|
920
969
|
/**
|
|
921
970
|
* Name assigned when the window/tab was opened (goTo `newTab`/`newWindow`). The integer branch is listed first because Ajv validates with coerceTypes — string-first would coerce integer indexes into name strings.
|
|
922
971
|
*/
|
|
923
|
-
export type
|
|
972
|
+
export type ByName15 = string;
|
|
924
973
|
/**
|
|
925
974
|
* Which tab to act on. Omit to use the active tab. Without `window`, the selector searches every tab in creation order — including tabs the page opened itself.
|
|
926
975
|
*/
|
|
927
|
-
export type WindowTabSelector13 =
|
|
976
|
+
export type WindowTabSelector13 = ByIndex16 | ByName16 | ByCriteria16;
|
|
928
977
|
/**
|
|
929
978
|
* Index in creation order. Negative counts from the end; `-1` is the newest.
|
|
930
979
|
*/
|
|
931
|
-
export type
|
|
980
|
+
export type ByIndex16 = number;
|
|
932
981
|
/**
|
|
933
982
|
* Name assigned when the window/tab was opened (goTo `newTab`/`newWindow`). The integer branch is listed first because Ajv validates with coerceTypes — string-first would coerce integer indexes into name strings.
|
|
934
983
|
*/
|
|
935
|
-
export type
|
|
984
|
+
export type ByName16 = string;
|
|
985
|
+
/**
|
|
986
|
+
* Which app window to act on. Omit to use the active window. Apps have windows, no tabs.
|
|
987
|
+
*/
|
|
988
|
+
export type AppWindowSelector3 = ByIndex17 | ByName17 | ByCriteria17;
|
|
989
|
+
/**
|
|
990
|
+
* Index in creation order. Negative counts from the end; `-1` is the newest (e.g. a dialog the app just opened).
|
|
991
|
+
*/
|
|
992
|
+
export type ByIndex17 = number;
|
|
993
|
+
/**
|
|
994
|
+
* Assigned window name. The integer branch is listed first because Ajv validates with coerceTypes — string-first would coerce integer indexes into name strings.
|
|
995
|
+
*/
|
|
996
|
+
export type ByName17 = string;
|
|
936
997
|
/**
|
|
937
998
|
* A condition expression, or an array of expressions combined with logical AND.
|
|
938
999
|
*/
|
|
@@ -965,10 +1026,13 @@ export type Routing58 = {
|
|
|
965
1026
|
export type Routing59 = {
|
|
966
1027
|
[k: string]: unknown;
|
|
967
1028
|
};
|
|
1029
|
+
export type DeviceByName = string;
|
|
968
1030
|
/**
|
|
969
|
-
*
|
|
1031
|
+
* Wait for a specific element to be present. At least one finding field must be specified.
|
|
970
1032
|
*/
|
|
971
|
-
export type
|
|
1033
|
+
export type ElementCriteria2 = {
|
|
1034
|
+
[k: string]: unknown;
|
|
1035
|
+
};
|
|
972
1036
|
/**
|
|
973
1037
|
* A condition expression, or an array of expressions combined with logical AND.
|
|
974
1038
|
*/
|
|
@@ -1001,6 +1065,42 @@ export type Routing62 = {
|
|
|
1001
1065
|
export type Routing63 = {
|
|
1002
1066
|
[k: string]: unknown;
|
|
1003
1067
|
};
|
|
1068
|
+
/**
|
|
1069
|
+
* Load environment variables from the specified `.env` file.
|
|
1070
|
+
*/
|
|
1071
|
+
export type LoadVariables1 = string;
|
|
1072
|
+
/**
|
|
1073
|
+
* A condition expression, or an array of expressions combined with logical AND.
|
|
1074
|
+
*/
|
|
1075
|
+
export type Condition32 = string | [string, ...string[]];
|
|
1076
|
+
/**
|
|
1077
|
+
* A condition expression, or an array of expressions combined with logical AND.
|
|
1078
|
+
*/
|
|
1079
|
+
export type Condition33 = string | [string, ...string[]];
|
|
1080
|
+
/**
|
|
1081
|
+
* A single dynamic-routing entry: an optional condition (`if`) plus exactly one routing action. Attached to a step or test handler (`onPass`, `onFail`, `onWarning`, `onSkip`). For step-level handlers, `continue`, `stop`, `retry`, and `goToStep` are evaluated at runtime; `goToTest` is validated but not yet executed (deferred at step scope). For test-level handlers, `continue`, `stop`, and `goToTest` are evaluated at runtime (test scope; `goToTest` jumps to a test within the spec), while `retry` and `goToStep` are not applicable at test scope.
|
|
1082
|
+
*/
|
|
1083
|
+
export type Routing64 = {
|
|
1084
|
+
[k: string]: unknown;
|
|
1085
|
+
};
|
|
1086
|
+
/**
|
|
1087
|
+
* A single dynamic-routing entry: an optional condition (`if`) plus exactly one routing action. Attached to a step or test handler (`onPass`, `onFail`, `onWarning`, `onSkip`). For step-level handlers, `continue`, `stop`, `retry`, and `goToStep` are evaluated at runtime; `goToTest` is validated but not yet executed (deferred at step scope). For test-level handlers, `continue`, `stop`, and `goToTest` are evaluated at runtime (test scope; `goToTest` jumps to a test within the spec), while `retry` and `goToStep` are not applicable at test scope.
|
|
1088
|
+
*/
|
|
1089
|
+
export type Routing65 = {
|
|
1090
|
+
[k: string]: unknown;
|
|
1091
|
+
};
|
|
1092
|
+
/**
|
|
1093
|
+
* A single dynamic-routing entry: an optional condition (`if`) plus exactly one routing action. Attached to a step or test handler (`onPass`, `onFail`, `onWarning`, `onSkip`). For step-level handlers, `continue`, `stop`, `retry`, and `goToStep` are evaluated at runtime; `goToTest` is validated but not yet executed (deferred at step scope). For test-level handlers, `continue`, `stop`, and `goToTest` are evaluated at runtime (test scope; `goToTest` jumps to a test within the spec), while `retry` and `goToStep` are not applicable at test scope.
|
|
1094
|
+
*/
|
|
1095
|
+
export type Routing66 = {
|
|
1096
|
+
[k: string]: unknown;
|
|
1097
|
+
};
|
|
1098
|
+
/**
|
|
1099
|
+
* A single dynamic-routing entry: an optional condition (`if`) plus exactly one routing action. Attached to a step or test handler (`onPass`, `onFail`, `onWarning`, `onSkip`). For step-level handlers, `continue`, `stop`, `retry`, and `goToStep` are evaluated at runtime; `goToTest` is validated but not yet executed (deferred at step scope). For test-level handlers, `continue`, `stop`, and `goToTest` are evaluated at runtime (test scope; `goToTest` jumps to a test within the spec), while `retry` and `goToStep` are not applicable at test scope.
|
|
1100
|
+
*/
|
|
1101
|
+
export type Routing67 = {
|
|
1102
|
+
[k: string]: unknown;
|
|
1103
|
+
};
|
|
1004
1104
|
/**
|
|
1005
1105
|
* Display text, selector, or regex pattern (enclosed in forward slashes) of the element.
|
|
1006
1106
|
*/
|
|
@@ -1022,57 +1122,57 @@ export type SurfaceByBrowserEngine4 = "chrome" | "firefox" | "safari" | "webkit"
|
|
|
1022
1122
|
/**
|
|
1023
1123
|
* Which window to act on. Omit to use the active window.
|
|
1024
1124
|
*/
|
|
1025
|
-
export type WindowTabSelector14 =
|
|
1125
|
+
export type WindowTabSelector14 = ByIndex18 | ByName18 | ByCriteria18;
|
|
1026
1126
|
/**
|
|
1027
1127
|
* Index in creation order. Negative counts from the end; `-1` is the newest.
|
|
1028
1128
|
*/
|
|
1029
|
-
export type
|
|
1129
|
+
export type ByIndex18 = number;
|
|
1030
1130
|
/**
|
|
1031
1131
|
* Name assigned when the window/tab was opened (goTo `newTab`/`newWindow`). The integer branch is listed first because Ajv validates with coerceTypes — string-first would coerce integer indexes into name strings.
|
|
1032
1132
|
*/
|
|
1033
|
-
export type
|
|
1133
|
+
export type ByName18 = string;
|
|
1034
1134
|
/**
|
|
1035
1135
|
* Which tab to act on. Omit to use the active tab. Without `window`, the selector searches every tab in creation order — including tabs the page opened itself.
|
|
1036
1136
|
*/
|
|
1037
|
-
export type WindowTabSelector15 =
|
|
1137
|
+
export type WindowTabSelector15 = ByIndex19 | ByName19 | ByCriteria19;
|
|
1038
1138
|
/**
|
|
1039
1139
|
* Index in creation order. Negative counts from the end; `-1` is the newest.
|
|
1040
1140
|
*/
|
|
1041
|
-
export type
|
|
1141
|
+
export type ByIndex19 = number;
|
|
1042
1142
|
/**
|
|
1043
1143
|
* Name assigned when the window/tab was opened (goTo `newTab`/`newWindow`). The integer branch is listed first because Ajv validates with coerceTypes — string-first would coerce integer indexes into name strings.
|
|
1044
1144
|
*/
|
|
1045
|
-
export type
|
|
1145
|
+
export type ByName19 = string;
|
|
1046
1146
|
/**
|
|
1047
1147
|
* A condition expression, or an array of expressions combined with logical AND.
|
|
1048
1148
|
*/
|
|
1049
|
-
export type
|
|
1149
|
+
export type Condition34 = string | [string, ...string[]];
|
|
1050
1150
|
/**
|
|
1051
1151
|
* A condition expression, or an array of expressions combined with logical AND.
|
|
1052
1152
|
*/
|
|
1053
|
-
export type
|
|
1153
|
+
export type Condition35 = string | [string, ...string[]];
|
|
1054
1154
|
/**
|
|
1055
1155
|
* A single dynamic-routing entry: an optional condition (`if`) plus exactly one routing action. Attached to a step or test handler (`onPass`, `onFail`, `onWarning`, `onSkip`). For step-level handlers, `continue`, `stop`, `retry`, and `goToStep` are evaluated at runtime; `goToTest` is validated but not yet executed (deferred at step scope). For test-level handlers, `continue`, `stop`, and `goToTest` are evaluated at runtime (test scope; `goToTest` jumps to a test within the spec), while `retry` and `goToStep` are not applicable at test scope.
|
|
1056
1156
|
*/
|
|
1057
|
-
export type
|
|
1157
|
+
export type Routing68 = {
|
|
1058
1158
|
[k: string]: unknown;
|
|
1059
1159
|
};
|
|
1060
1160
|
/**
|
|
1061
1161
|
* A single dynamic-routing entry: an optional condition (`if`) plus exactly one routing action. Attached to a step or test handler (`onPass`, `onFail`, `onWarning`, `onSkip`). For step-level handlers, `continue`, `stop`, `retry`, and `goToStep` are evaluated at runtime; `goToTest` is validated but not yet executed (deferred at step scope). For test-level handlers, `continue`, `stop`, and `goToTest` are evaluated at runtime (test scope; `goToTest` jumps to a test within the spec), while `retry` and `goToStep` are not applicable at test scope.
|
|
1062
1162
|
*/
|
|
1063
|
-
export type
|
|
1163
|
+
export type Routing69 = {
|
|
1064
1164
|
[k: string]: unknown;
|
|
1065
1165
|
};
|
|
1066
1166
|
/**
|
|
1067
1167
|
* A single dynamic-routing entry: an optional condition (`if`) plus exactly one routing action. Attached to a step or test handler (`onPass`, `onFail`, `onWarning`, `onSkip`). For step-level handlers, `continue`, `stop`, `retry`, and `goToStep` are evaluated at runtime; `goToTest` is validated but not yet executed (deferred at step scope). For test-level handlers, `continue`, `stop`, and `goToTest` are evaluated at runtime (test scope; `goToTest` jumps to a test within the spec), while `retry` and `goToStep` are not applicable at test scope.
|
|
1068
1168
|
*/
|
|
1069
|
-
export type
|
|
1169
|
+
export type Routing70 = {
|
|
1070
1170
|
[k: string]: unknown;
|
|
1071
1171
|
};
|
|
1072
1172
|
/**
|
|
1073
1173
|
* A single dynamic-routing entry: an optional condition (`if`) plus exactly one routing action. Attached to a step or test handler (`onPass`, `onFail`, `onWarning`, `onSkip`). For step-level handlers, `continue`, `stop`, `retry`, and `goToStep` are evaluated at runtime; `goToTest` is validated but not yet executed (deferred at step scope). For test-level handlers, `continue`, `stop`, and `goToTest` are evaluated at runtime (test scope; `goToTest` jumps to a test within the spec), while `retry` and `goToStep` are not applicable at test scope.
|
|
1074
1174
|
*/
|
|
1075
|
-
export type
|
|
1175
|
+
export type Routing71 = {
|
|
1076
1176
|
[k: string]: unknown;
|
|
1077
1177
|
};
|
|
1078
1178
|
/**
|
|
@@ -1089,33 +1189,33 @@ export type LoadCookieDetailed = {
|
|
|
1089
1189
|
/**
|
|
1090
1190
|
* A condition expression, or an array of expressions combined with logical AND.
|
|
1091
1191
|
*/
|
|
1092
|
-
export type
|
|
1192
|
+
export type Condition36 = string | [string, ...string[]];
|
|
1093
1193
|
/**
|
|
1094
1194
|
* A condition expression, or an array of expressions combined with logical AND.
|
|
1095
1195
|
*/
|
|
1096
|
-
export type
|
|
1196
|
+
export type Condition37 = string | [string, ...string[]];
|
|
1097
1197
|
/**
|
|
1098
1198
|
* A single dynamic-routing entry: an optional condition (`if`) plus exactly one routing action. Attached to a step or test handler (`onPass`, `onFail`, `onWarning`, `onSkip`). For step-level handlers, `continue`, `stop`, `retry`, and `goToStep` are evaluated at runtime; `goToTest` is validated but not yet executed (deferred at step scope). For test-level handlers, `continue`, `stop`, and `goToTest` are evaluated at runtime (test scope; `goToTest` jumps to a test within the spec), while `retry` and `goToStep` are not applicable at test scope.
|
|
1099
1199
|
*/
|
|
1100
|
-
export type
|
|
1200
|
+
export type Routing72 = {
|
|
1101
1201
|
[k: string]: unknown;
|
|
1102
1202
|
};
|
|
1103
1203
|
/**
|
|
1104
1204
|
* A single dynamic-routing entry: an optional condition (`if`) plus exactly one routing action. Attached to a step or test handler (`onPass`, `onFail`, `onWarning`, `onSkip`). For step-level handlers, `continue`, `stop`, `retry`, and `goToStep` are evaluated at runtime; `goToTest` is validated but not yet executed (deferred at step scope). For test-level handlers, `continue`, `stop`, and `goToTest` are evaluated at runtime (test scope; `goToTest` jumps to a test within the spec), while `retry` and `goToStep` are not applicable at test scope.
|
|
1105
1205
|
*/
|
|
1106
|
-
export type
|
|
1206
|
+
export type Routing73 = {
|
|
1107
1207
|
[k: string]: unknown;
|
|
1108
1208
|
};
|
|
1109
1209
|
/**
|
|
1110
1210
|
* A single dynamic-routing entry: an optional condition (`if`) plus exactly one routing action. Attached to a step or test handler (`onPass`, `onFail`, `onWarning`, `onSkip`). For step-level handlers, `continue`, `stop`, `retry`, and `goToStep` are evaluated at runtime; `goToTest` is validated but not yet executed (deferred at step scope). For test-level handlers, `continue`, `stop`, and `goToTest` are evaluated at runtime (test scope; `goToTest` jumps to a test within the spec), while `retry` and `goToStep` are not applicable at test scope.
|
|
1111
1211
|
*/
|
|
1112
|
-
export type
|
|
1212
|
+
export type Routing74 = {
|
|
1113
1213
|
[k: string]: unknown;
|
|
1114
1214
|
};
|
|
1115
1215
|
/**
|
|
1116
1216
|
* A single dynamic-routing entry: an optional condition (`if`) plus exactly one routing action. Attached to a step or test handler (`onPass`, `onFail`, `onWarning`, `onSkip`). For step-level handlers, `continue`, `stop`, `retry`, and `goToStep` are evaluated at runtime; `goToTest` is validated but not yet executed (deferred at step scope). For test-level handlers, `continue`, `stop`, and `goToTest` are evaluated at runtime (test scope; `goToTest` jumps to a test within the spec), while `retry` and `goToStep` are not applicable at test scope.
|
|
1117
1217
|
*/
|
|
1118
|
-
export type
|
|
1218
|
+
export type Routing75 = {
|
|
1119
1219
|
[k: string]: unknown;
|
|
1120
1220
|
};
|
|
1121
1221
|
/**
|
|
@@ -2748,6 +2848,27 @@ export interface ByCriteria5 {
|
|
|
2748
2848
|
*/
|
|
2749
2849
|
url?: string;
|
|
2750
2850
|
}
|
|
2851
|
+
export interface AppSurface {
|
|
2852
|
+
/**
|
|
2853
|
+
* Name of an app surface opened by `startSurface` (its `name`, or the default derived from the app identifier).
|
|
2854
|
+
*/
|
|
2855
|
+
app: string;
|
|
2856
|
+
window?: AppWindowSelector;
|
|
2857
|
+
}
|
|
2858
|
+
export interface ByCriteria6 {
|
|
2859
|
+
/**
|
|
2860
|
+
* Assigned window name.
|
|
2861
|
+
*/
|
|
2862
|
+
name?: string;
|
|
2863
|
+
/**
|
|
2864
|
+
* Index in creation order. Negative counts from the end.
|
|
2865
|
+
*/
|
|
2866
|
+
index?: number;
|
|
2867
|
+
/**
|
|
2868
|
+
* Window title to match. Substring, or /regex/.
|
|
2869
|
+
*/
|
|
2870
|
+
title?: string;
|
|
2871
|
+
}
|
|
2751
2872
|
export interface ProcessReadiness {
|
|
2752
2873
|
/**
|
|
2753
2874
|
* Wait until combined stdout+stderr matches. Substring, or /regex/.
|
|
@@ -2767,12 +2888,14 @@ export interface BrowserReadiness {
|
|
|
2767
2888
|
* Wait for DOM mutations to stop for this duration in milliseconds.
|
|
2768
2889
|
*/
|
|
2769
2890
|
domIdleTime?: number;
|
|
2891
|
+
find?: ElementCriteria;
|
|
2892
|
+
}
|
|
2893
|
+
export interface AppReadiness {
|
|
2770
2894
|
/**
|
|
2771
|
-
*
|
|
2895
|
+
* Fixed delay (ms).
|
|
2772
2896
|
*/
|
|
2773
|
-
|
|
2774
|
-
|
|
2775
|
-
};
|
|
2897
|
+
delayMs?: number;
|
|
2898
|
+
find?: ElementCriteria1;
|
|
2776
2899
|
}
|
|
2777
2900
|
export interface WaitUntilRequiresASurface {
|
|
2778
2901
|
[k: string]: unknown;
|
|
@@ -2786,6 +2909,9 @@ export interface AProcessSurfaceTakesProcessReadiness {
|
|
|
2786
2909
|
export interface ABrowserSurfaceTakesBrowserReadiness {
|
|
2787
2910
|
[k: string]: unknown;
|
|
2788
2911
|
}
|
|
2912
|
+
export interface AnAppSurfaceTakesAppReadiness {
|
|
2913
|
+
[k: string]: unknown;
|
|
2914
|
+
}
|
|
2789
2915
|
export interface ABrowserEngineStringSurfaceTakesBrowserReadiness {
|
|
2790
2916
|
[k: string]: unknown;
|
|
2791
2917
|
}
|
|
@@ -2926,11 +3052,11 @@ export interface Screenshot {
|
|
|
2926
3052
|
screenshot: Screenshot1;
|
|
2927
3053
|
[k: string]: unknown;
|
|
2928
3054
|
}
|
|
2929
|
-
export interface
|
|
3055
|
+
export interface CaptureScreenshotFields {
|
|
2930
3056
|
/**
|
|
2931
|
-
* The browser window/tab to capture. Omit to capture the active tab. The targeted
|
|
3057
|
+
* The browser window/tab or app window to capture. Omit to capture the active tab. The targeted surface stays focused afterward. App surfaces use the object form ({ "app": … }). App captures don't support `crop` yet.
|
|
2932
3058
|
*/
|
|
2933
|
-
surface?: SurfaceByBrowserEngine2 | BrowserSurface3;
|
|
3059
|
+
surface?: SurfaceByBrowserEngine2 | BrowserSurface3 | AppSurface1;
|
|
2934
3060
|
path?: ScreenshotSimple1;
|
|
2935
3061
|
/**
|
|
2936
3062
|
* Directory of the PNG file. If the directory doesn't exist, creates the directory.
|
|
@@ -2960,7 +3086,7 @@ export interface BrowserSurface3 {
|
|
|
2960
3086
|
window?: WindowTabSelector6;
|
|
2961
3087
|
tab?: WindowTabSelector7;
|
|
2962
3088
|
}
|
|
2963
|
-
export interface
|
|
3089
|
+
export interface ByCriteria7 {
|
|
2964
3090
|
/**
|
|
2965
3091
|
* Name assigned when the window/tab was opened.
|
|
2966
3092
|
*/
|
|
@@ -2978,7 +3104,7 @@ export interface ByCriteria6 {
|
|
|
2978
3104
|
*/
|
|
2979
3105
|
url?: string;
|
|
2980
3106
|
}
|
|
2981
|
-
export interface
|
|
3107
|
+
export interface ByCriteria8 {
|
|
2982
3108
|
/**
|
|
2983
3109
|
* Name assigned when the window/tab was opened.
|
|
2984
3110
|
*/
|
|
@@ -2996,6 +3122,27 @@ export interface ByCriteria7 {
|
|
|
2996
3122
|
*/
|
|
2997
3123
|
url?: string;
|
|
2998
3124
|
}
|
|
3125
|
+
export interface AppSurface1 {
|
|
3126
|
+
/**
|
|
3127
|
+
* Name of an app surface opened by `startSurface` (its `name`, or the default derived from the app identifier).
|
|
3128
|
+
*/
|
|
3129
|
+
app: string;
|
|
3130
|
+
window?: AppWindowSelector1;
|
|
3131
|
+
}
|
|
3132
|
+
export interface ByCriteria9 {
|
|
3133
|
+
/**
|
|
3134
|
+
* Assigned window name.
|
|
3135
|
+
*/
|
|
3136
|
+
name?: string;
|
|
3137
|
+
/**
|
|
3138
|
+
* Index in creation order. Negative counts from the end.
|
|
3139
|
+
*/
|
|
3140
|
+
index?: number;
|
|
3141
|
+
/**
|
|
3142
|
+
* Window title to match. Substring, or /regex/.
|
|
3143
|
+
*/
|
|
3144
|
+
title?: string;
|
|
3145
|
+
}
|
|
2999
3146
|
/**
|
|
3000
3147
|
* Information about the source integration for this screenshot, enabling upload of changed files back to the source CMS. Set automatically during test resolution for files from integrations.
|
|
3001
3148
|
*/
|
|
@@ -3021,6 +3168,9 @@ export interface SourceIntegration {
|
|
|
3021
3168
|
*/
|
|
3022
3169
|
contentPath?: string;
|
|
3023
3170
|
}
|
|
3171
|
+
export interface AppCapturesDonTSupportCropYet {
|
|
3172
|
+
[k: string]: unknown;
|
|
3173
|
+
}
|
|
3024
3174
|
export interface Common10 {
|
|
3025
3175
|
/**
|
|
3026
3176
|
* JSON Schema for this object.
|
|
@@ -3331,7 +3481,7 @@ export interface BrowserSurface4 {
|
|
|
3331
3481
|
window?: WindowTabSelector8;
|
|
3332
3482
|
tab?: WindowTabSelector9;
|
|
3333
3483
|
}
|
|
3334
|
-
export interface
|
|
3484
|
+
export interface ByCriteria10 {
|
|
3335
3485
|
/**
|
|
3336
3486
|
* Name assigned when the window/tab was opened.
|
|
3337
3487
|
*/
|
|
@@ -3349,7 +3499,7 @@ export interface ByCriteria8 {
|
|
|
3349
3499
|
*/
|
|
3350
3500
|
url?: string;
|
|
3351
3501
|
}
|
|
3352
|
-
export interface
|
|
3502
|
+
export interface ByCriteria11 {
|
|
3353
3503
|
/**
|
|
3354
3504
|
* Name assigned when the window/tab was opened.
|
|
3355
3505
|
*/
|
|
@@ -3679,7 +3829,7 @@ export interface BrowserSurface5 {
|
|
|
3679
3829
|
window?: WindowTabSelector10;
|
|
3680
3830
|
tab?: WindowTabSelector11;
|
|
3681
3831
|
}
|
|
3682
|
-
export interface
|
|
3832
|
+
export interface ByCriteria12 {
|
|
3683
3833
|
/**
|
|
3684
3834
|
* Name assigned when the window/tab was opened.
|
|
3685
3835
|
*/
|
|
@@ -3697,7 +3847,7 @@ export interface ByCriteria10 {
|
|
|
3697
3847
|
*/
|
|
3698
3848
|
url?: string;
|
|
3699
3849
|
}
|
|
3700
|
-
export interface
|
|
3850
|
+
export interface ByCriteria13 {
|
|
3701
3851
|
/**
|
|
3702
3852
|
* Name assigned when the window/tab was opened.
|
|
3703
3853
|
*/
|
|
@@ -3715,6 +3865,27 @@ export interface ByCriteria11 {
|
|
|
3715
3865
|
*/
|
|
3716
3866
|
url?: string;
|
|
3717
3867
|
}
|
|
3868
|
+
export interface AppSurface2 {
|
|
3869
|
+
/**
|
|
3870
|
+
* Name of an app surface opened by `startSurface` (its `name`, or the default derived from the app identifier).
|
|
3871
|
+
*/
|
|
3872
|
+
app: string;
|
|
3873
|
+
window?: AppWindowSelector2;
|
|
3874
|
+
}
|
|
3875
|
+
export interface ByCriteria14 {
|
|
3876
|
+
/**
|
|
3877
|
+
* Assigned window name.
|
|
3878
|
+
*/
|
|
3879
|
+
name?: string;
|
|
3880
|
+
/**
|
|
3881
|
+
* Index in creation order. Negative counts from the end.
|
|
3882
|
+
*/
|
|
3883
|
+
index?: number;
|
|
3884
|
+
/**
|
|
3885
|
+
* Window title to match. Substring, or /regex/.
|
|
3886
|
+
*/
|
|
3887
|
+
title?: string;
|
|
3888
|
+
}
|
|
3718
3889
|
export interface ProcessSurface2 {
|
|
3719
3890
|
/**
|
|
3720
3891
|
* Name of a background process started by a runShell/runCode `background` step.
|
|
@@ -3733,7 +3904,7 @@ export interface BrowserSurface6 {
|
|
|
3733
3904
|
window?: WindowTabSelector12;
|
|
3734
3905
|
tab?: WindowTabSelector13;
|
|
3735
3906
|
}
|
|
3736
|
-
export interface
|
|
3907
|
+
export interface ByCriteria15 {
|
|
3737
3908
|
/**
|
|
3738
3909
|
* Name assigned when the window/tab was opened.
|
|
3739
3910
|
*/
|
|
@@ -3751,7 +3922,7 @@ export interface ByCriteria12 {
|
|
|
3751
3922
|
*/
|
|
3752
3923
|
url?: string;
|
|
3753
3924
|
}
|
|
3754
|
-
export interface
|
|
3925
|
+
export interface ByCriteria16 {
|
|
3755
3926
|
/**
|
|
3756
3927
|
* Name assigned when the window/tab was opened.
|
|
3757
3928
|
*/
|
|
@@ -3769,6 +3940,27 @@ export interface ByCriteria13 {
|
|
|
3769
3940
|
*/
|
|
3770
3941
|
url?: string;
|
|
3771
3942
|
}
|
|
3943
|
+
export interface AppSurface3 {
|
|
3944
|
+
/**
|
|
3945
|
+
* Name of an app surface opened by `startSurface` (its `name`, or the default derived from the app identifier).
|
|
3946
|
+
*/
|
|
3947
|
+
app: string;
|
|
3948
|
+
window?: AppWindowSelector3;
|
|
3949
|
+
}
|
|
3950
|
+
export interface ByCriteria17 {
|
|
3951
|
+
/**
|
|
3952
|
+
* Assigned window name.
|
|
3953
|
+
*/
|
|
3954
|
+
name?: string;
|
|
3955
|
+
/**
|
|
3956
|
+
* Index in creation order. Negative counts from the end.
|
|
3957
|
+
*/
|
|
3958
|
+
index?: number;
|
|
3959
|
+
/**
|
|
3960
|
+
* Window title to match. Substring, or /regex/.
|
|
3961
|
+
*/
|
|
3962
|
+
title?: string;
|
|
3963
|
+
}
|
|
3772
3964
|
export interface Common14 {
|
|
3773
3965
|
/**
|
|
3774
3966
|
* JSON Schema for this object.
|
|
@@ -3902,10 +4094,106 @@ export interface SourceLocation14 {
|
|
|
3902
4094
|
*/
|
|
3903
4095
|
endIndex: number;
|
|
3904
4096
|
}
|
|
3905
|
-
export interface
|
|
3906
|
-
|
|
4097
|
+
export interface StartSurface {
|
|
4098
|
+
startSurface: StartSurface1;
|
|
3907
4099
|
[k: string]: unknown;
|
|
3908
4100
|
}
|
|
4101
|
+
/**
|
|
4102
|
+
* Open (provision) a surface and register it by name so later steps can target it with `surface`. Phase A1 ships the native app branch: launch a desktop application by executable path, bundle ID, or UWP AppUserModelID. The mobile fields (`install`, `activity`, `device`) are validated now and land in later phases; browser/process branches and the parallel array form arrive with multi-surface Phase 6. See docs/design/native-app-surfaces.md.
|
|
4103
|
+
*/
|
|
4104
|
+
export interface StartSurface1 {
|
|
4105
|
+
/**
|
|
4106
|
+
* The app identifier: an executable path (`C:\\Windows\\System32\\notepad.exe`), a `.app` path, a bundle ID (`com.apple.TextEdit`), a package name (`com.example.myapp`), or a UWP AppUserModelID (`Microsoft.WindowsCalculator_8wekyb3d8bbwe!App`). Disambiguated by syntax — never by a type field.
|
|
4107
|
+
*/
|
|
4108
|
+
app: string;
|
|
4109
|
+
/**
|
|
4110
|
+
* Surface-registry name later steps use in `surface`. Default: the executable basename without extension, or the final dot-segment of an ID.
|
|
4111
|
+
*/
|
|
4112
|
+
name?: string;
|
|
4113
|
+
/**
|
|
4114
|
+
* Launch arguments (desktop apps). Entries join into a single shell-style argument string for the driver, so an argument with embedded spaces must carry its own quotes (e.g. "\"My File.txt\"").
|
|
4115
|
+
*/
|
|
4116
|
+
args?: string[];
|
|
4117
|
+
/**
|
|
4118
|
+
* Working directory for the launched app (desktop apps). Default: the run's working directory.
|
|
4119
|
+
*/
|
|
4120
|
+
workingDirectory?: string;
|
|
4121
|
+
/**
|
|
4122
|
+
* Extra environment variables for the launched app (desktop apps). Driver support varies; unmapped variables fail with a clear runtime error.
|
|
4123
|
+
*/
|
|
4124
|
+
env?: {
|
|
4125
|
+
[k: string]: string;
|
|
4126
|
+
};
|
|
4127
|
+
/**
|
|
4128
|
+
* Path to an installable artifact (`.apk`/`.app`/`.ipa`) to install on the device before launch. Reserved for the mobile phases; validated now, not yet implemented.
|
|
4129
|
+
*/
|
|
4130
|
+
install?: string;
|
|
4131
|
+
/**
|
|
4132
|
+
* Android main activity override (defaults to the package's launcher activity). Reserved for the Android phase; validated now, not yet implemented.
|
|
4133
|
+
*/
|
|
4134
|
+
activity?: string;
|
|
4135
|
+
/**
|
|
4136
|
+
* Device the app runs on. Omit for a host desktop app. A string references an already-provisioned device by name; an object provisions one. Reserved for the mobile phases; validated now, not yet implemented.
|
|
4137
|
+
*/
|
|
4138
|
+
device?: DeviceByName | DeviceDescriptor;
|
|
4139
|
+
/**
|
|
4140
|
+
* Escape-hatch passthrough: merged into the automation session's capabilities after the ones Doc Detective computes (namespaced per driver, e.g. `appium:noReset`). Driver- and version-specific; use sparingly.
|
|
4141
|
+
*/
|
|
4142
|
+
driverOptions?: {
|
|
4143
|
+
[k: string]: unknown;
|
|
4144
|
+
};
|
|
4145
|
+
waitUntil?: AppReadiness1;
|
|
4146
|
+
/**
|
|
4147
|
+
* Startup ceiling in milliseconds (launch + install + readiness).
|
|
4148
|
+
*/
|
|
4149
|
+
timeout?: number;
|
|
4150
|
+
}
|
|
4151
|
+
export interface DeviceDescriptor {
|
|
4152
|
+
/**
|
|
4153
|
+
* Target platform. Selects the mobile driver.
|
|
4154
|
+
*/
|
|
4155
|
+
platform: "android" | "ios";
|
|
4156
|
+
/**
|
|
4157
|
+
* AVD name (Android) or simulator device name (iOS). Also the device's registry identity: the same name resolves to the same device.
|
|
4158
|
+
*/
|
|
4159
|
+
name?: string;
|
|
4160
|
+
/**
|
|
4161
|
+
* Platform version. Default: the newest available.
|
|
4162
|
+
*/
|
|
4163
|
+
osVersion?: string;
|
|
4164
|
+
/**
|
|
4165
|
+
* Run the Android emulator without a window. Ignored where not applicable.
|
|
4166
|
+
*/
|
|
4167
|
+
headless?: boolean;
|
|
4168
|
+
/**
|
|
4169
|
+
* Initial orientation. Reserved; validated now, not yet implemented.
|
|
4170
|
+
*/
|
|
4171
|
+
orientation?: "portrait" | "landscape";
|
|
4172
|
+
/**
|
|
4173
|
+
* Device kind. `emulator`/`simulator` (the default, inferred from `platform`) or `device` for real hardware. Reserved; validated now, not yet implemented.
|
|
4174
|
+
*/
|
|
4175
|
+
type?: "emulator" | "simulator" | "device";
|
|
4176
|
+
/**
|
|
4177
|
+
* Pin a specific device/emulator instance by UDID. Reserved; validated now, not yet implemented.
|
|
4178
|
+
*/
|
|
4179
|
+
udid?: string;
|
|
4180
|
+
/**
|
|
4181
|
+
* Cloud device farm configuration, keyed by provider. Reserved; validated now, not yet implemented.
|
|
4182
|
+
*/
|
|
4183
|
+
provider?: {
|
|
4184
|
+
[k: string]: unknown;
|
|
4185
|
+
};
|
|
4186
|
+
}
|
|
4187
|
+
/**
|
|
4188
|
+
* Startup readiness: a fixed delay and/or an element that must exist before the surface is considered open. No condition applies by default.
|
|
4189
|
+
*/
|
|
4190
|
+
export interface AppReadiness1 {
|
|
4191
|
+
/**
|
|
4192
|
+
* Fixed delay (ms).
|
|
4193
|
+
*/
|
|
4194
|
+
delayMs?: number;
|
|
4195
|
+
find?: ElementCriteria2;
|
|
4196
|
+
}
|
|
3909
4197
|
export interface Common15 {
|
|
3910
4198
|
/**
|
|
3911
4199
|
* JSON Schema for this object.
|
|
@@ -4039,6 +4327,143 @@ export interface SourceLocation15 {
|
|
|
4039
4327
|
*/
|
|
4040
4328
|
endIndex: number;
|
|
4041
4329
|
}
|
|
4330
|
+
export interface LoadVariables {
|
|
4331
|
+
loadVariables: LoadVariables1;
|
|
4332
|
+
[k: string]: unknown;
|
|
4333
|
+
}
|
|
4334
|
+
export interface Common16 {
|
|
4335
|
+
/**
|
|
4336
|
+
* JSON Schema for this object.
|
|
4337
|
+
*/
|
|
4338
|
+
$schema?: "https://raw.githubusercontent.com/doc-detective/common/refs/heads/main/dist/schemas/step_v3.schema.json";
|
|
4339
|
+
/**
|
|
4340
|
+
* ID of the step.
|
|
4341
|
+
*/
|
|
4342
|
+
stepId?: string;
|
|
4343
|
+
/**
|
|
4344
|
+
* Description of the step.
|
|
4345
|
+
*/
|
|
4346
|
+
description?: string;
|
|
4347
|
+
/**
|
|
4348
|
+
* Whether or not the step may be unsafe. Unsafe steps may perform actions that could modify the system or environment in unexpected ways. Unsafe steps are only performed within Docker containers or if unsafe steps are enabled with the `allowUnsafeSteps` config property or the `--allow-unsafe` flag.
|
|
4349
|
+
*/
|
|
4350
|
+
unsafe?: boolean;
|
|
4351
|
+
outputs?: OutputsStep16;
|
|
4352
|
+
variables?: VariablesStep16;
|
|
4353
|
+
/**
|
|
4354
|
+
* Whether or not this step should act as a breakpoint when debugging is enabled. When `true`, execution will pause at this step when debug mode is enabled.
|
|
4355
|
+
*/
|
|
4356
|
+
breakpoint?: boolean;
|
|
4357
|
+
if?: Condition32;
|
|
4358
|
+
/**
|
|
4359
|
+
* Assertions for this step. As authored input, a custom condition expression (or array of expressions, combined with logical AND). In a test result, the runner replaces this with the array of articulated assertion records it evaluated (implicit then custom).
|
|
4360
|
+
*/
|
|
4361
|
+
assertions?: Condition33 | Assertion16[];
|
|
4362
|
+
/**
|
|
4363
|
+
* Routing entries evaluated when this step passes. The first entry whose `if` matches applies. `continue`, `stop`, `retry`, and `goToStep` are honored at runtime; `goToTest` is validated but not yet executed.
|
|
4364
|
+
*/
|
|
4365
|
+
onPass?: Routing64[];
|
|
4366
|
+
/**
|
|
4367
|
+
* Routing entries evaluated when this step fails. The first entry whose `if` matches applies; the default when none is set stops the test. `continue`, `stop`, `retry`, and `goToStep` are honored at runtime; `goToTest` is validated but not yet executed.
|
|
4368
|
+
*/
|
|
4369
|
+
onFail?: Routing65[];
|
|
4370
|
+
/**
|
|
4371
|
+
* Routing entries evaluated when this step produces a warning. The first entry whose `if` matches applies. `continue`, `stop`, `retry`, and `goToStep` are honored at runtime; `goToTest` is validated but not yet executed.
|
|
4372
|
+
*/
|
|
4373
|
+
onWarning?: Routing66[];
|
|
4374
|
+
/**
|
|
4375
|
+
* Routing entries evaluated when this step is skipped (reached but not run — unsafe-blocked or guard-`if` false). The first entry whose `if` matches applies. `continue`, `stop`, and `goToStep` are honored at runtime; `goToTest` is validated but not yet executed. (`retry` is a no-op here — a step that never ran cannot be re-run.)
|
|
4376
|
+
*/
|
|
4377
|
+
onSkip?: Routing67[];
|
|
4378
|
+
location?: SourceLocation16;
|
|
4379
|
+
/**
|
|
4380
|
+
* Path, relative to the run's artifact directory (the report's `runDir`), of the screenshot captured automatically after this step. Always a non-empty, forward-slash, relative path. Present only in test results, when `autoScreenshot` is enabled and the capture succeeded. This is system-populated metadata and should not be set manually.
|
|
4381
|
+
*/
|
|
4382
|
+
autoScreenshot?: string;
|
|
4383
|
+
/**
|
|
4384
|
+
* Total number of times this step ran (the initial attempt plus retries) when a routing `retry` action re-ran it. Present only in test results, and only when the step was retried at least once (so the value is always >= 2). This is system-populated metadata and should not be set manually.
|
|
4385
|
+
*/
|
|
4386
|
+
attempts?: number;
|
|
4387
|
+
/**
|
|
4388
|
+
* Which visit of this step produced this report, when a routing goToStep re-ran it (the first visit omits this field). Present only in test results; system-populated.
|
|
4389
|
+
*/
|
|
4390
|
+
visit?: number;
|
|
4391
|
+
[k: string]: unknown;
|
|
4392
|
+
}
|
|
4393
|
+
/**
|
|
4394
|
+
* Outputs from step processes and user-defined expressions. Use the `outputs` object to reference outputs in subsequent steps. If a user-defined output matches the key for a step-defined output, the user-defined output takes precedence.
|
|
4395
|
+
*/
|
|
4396
|
+
export interface OutputsStep16 {
|
|
4397
|
+
/**
|
|
4398
|
+
* Runtime expression for a user-defined output value.
|
|
4399
|
+
*
|
|
4400
|
+
* This interface was referenced by `OutputsStep16`'s JSON-Schema definition
|
|
4401
|
+
* via the `patternProperty` "^[A-Za-z0-9_]+$".
|
|
4402
|
+
*/
|
|
4403
|
+
[k: string]: string;
|
|
4404
|
+
}
|
|
4405
|
+
/**
|
|
4406
|
+
* Environment variables to set from user-defined expressions.
|
|
4407
|
+
*/
|
|
4408
|
+
export interface VariablesStep16 {
|
|
4409
|
+
/**
|
|
4410
|
+
* Runtime expression for a user-defined output value.
|
|
4411
|
+
*
|
|
4412
|
+
* This interface was referenced by `VariablesStep16`'s JSON-Schema definition
|
|
4413
|
+
* via the `patternProperty` "^[A-Za-z0-9_]+$".
|
|
4414
|
+
*/
|
|
4415
|
+
[k: string]: string;
|
|
4416
|
+
}
|
|
4417
|
+
/**
|
|
4418
|
+
* An articulated assertion record produced by the runner for a step result. Each record names a single verification check, whether it passed, and the values it compared. The step's result is the roll-up of its assertion results (FAIL > WARNING > all-SKIPPED > PASS). System-populated; appears in test results, not in authored specs.
|
|
4419
|
+
*/
|
|
4420
|
+
export interface Assertion16 {
|
|
4421
|
+
/**
|
|
4422
|
+
* Human-readable articulation of the check, e.g. `exitCode in [0]`.
|
|
4423
|
+
*/
|
|
4424
|
+
statement: string;
|
|
4425
|
+
/**
|
|
4426
|
+
* Who defined the assertion: `implicit` (runner-defined) or `custom` (user-defined).
|
|
4427
|
+
*/
|
|
4428
|
+
source: "implicit" | "custom";
|
|
4429
|
+
/**
|
|
4430
|
+
* Outcome of evaluating the assertion.
|
|
4431
|
+
*/
|
|
4432
|
+
result: "PASS" | "FAIL" | "WARNING" | "SKIPPED";
|
|
4433
|
+
/**
|
|
4434
|
+
* The value (or values) the assertion expected. Optional.
|
|
4435
|
+
*/
|
|
4436
|
+
expected?: unknown[] | boolean | number | null | {
|
|
4437
|
+
[k: string]: unknown;
|
|
4438
|
+
} | string;
|
|
4439
|
+
/**
|
|
4440
|
+
* The value actually observed. Optional.
|
|
4441
|
+
*/
|
|
4442
|
+
actual?: unknown[] | boolean | number | null | {
|
|
4443
|
+
[k: string]: unknown;
|
|
4444
|
+
} | string;
|
|
4445
|
+
/**
|
|
4446
|
+
* Human-readable explanation of the outcome. Optional.
|
|
4447
|
+
*/
|
|
4448
|
+
description?: string;
|
|
4449
|
+
}
|
|
4450
|
+
/**
|
|
4451
|
+
* Source location where this step was detected in the original file. This is system-populated metadata and should not be set manually.
|
|
4452
|
+
*/
|
|
4453
|
+
export interface SourceLocation16 {
|
|
4454
|
+
/**
|
|
4455
|
+
* 1-indexed line number in the source file where the step was detected.
|
|
4456
|
+
*/
|
|
4457
|
+
line: number;
|
|
4458
|
+
/**
|
|
4459
|
+
* 0-indexed character offset from the start of the source file where the step begins.
|
|
4460
|
+
*/
|
|
4461
|
+
startIndex: number;
|
|
4462
|
+
/**
|
|
4463
|
+
* 0-indexed character offset from the start of the source file where the step ends (exclusive).
|
|
4464
|
+
*/
|
|
4465
|
+
endIndex: number;
|
|
4466
|
+
}
|
|
4042
4467
|
export interface DragAndDrop {
|
|
4043
4468
|
dragAndDrop: DragAndDrop1;
|
|
4044
4469
|
[k: string]: unknown;
|
|
@@ -4077,7 +4502,7 @@ export interface BrowserSurface7 {
|
|
|
4077
4502
|
window?: WindowTabSelector14;
|
|
4078
4503
|
tab?: WindowTabSelector15;
|
|
4079
4504
|
}
|
|
4080
|
-
export interface
|
|
4505
|
+
export interface ByCriteria18 {
|
|
4081
4506
|
/**
|
|
4082
4507
|
* Name assigned when the window/tab was opened.
|
|
4083
4508
|
*/
|
|
@@ -4095,7 +4520,7 @@ export interface ByCriteria14 {
|
|
|
4095
4520
|
*/
|
|
4096
4521
|
url?: string;
|
|
4097
4522
|
}
|
|
4098
|
-
export interface
|
|
4523
|
+
export interface ByCriteria19 {
|
|
4099
4524
|
/**
|
|
4100
4525
|
* Name assigned when the window/tab was opened.
|
|
4101
4526
|
*/
|
|
@@ -4113,7 +4538,7 @@ export interface ByCriteria15 {
|
|
|
4113
4538
|
*/
|
|
4114
4539
|
url?: string;
|
|
4115
4540
|
}
|
|
4116
|
-
export interface
|
|
4541
|
+
export interface Common17 {
|
|
4117
4542
|
/**
|
|
4118
4543
|
* JSON Schema for this object.
|
|
4119
4544
|
*/
|
|
@@ -4130,34 +4555,34 @@ export interface Common16 {
|
|
|
4130
4555
|
* Whether or not the step may be unsafe. Unsafe steps may perform actions that could modify the system or environment in unexpected ways. Unsafe steps are only performed within Docker containers or if unsafe steps are enabled with the `allowUnsafeSteps` config property or the `--allow-unsafe` flag.
|
|
4131
4556
|
*/
|
|
4132
4557
|
unsafe?: boolean;
|
|
4133
|
-
outputs?:
|
|
4134
|
-
variables?:
|
|
4558
|
+
outputs?: OutputsStep17;
|
|
4559
|
+
variables?: VariablesStep17;
|
|
4135
4560
|
/**
|
|
4136
4561
|
* Whether or not this step should act as a breakpoint when debugging is enabled. When `true`, execution will pause at this step when debug mode is enabled.
|
|
4137
4562
|
*/
|
|
4138
4563
|
breakpoint?: boolean;
|
|
4139
|
-
if?:
|
|
4564
|
+
if?: Condition34;
|
|
4140
4565
|
/**
|
|
4141
4566
|
* Assertions for this step. As authored input, a custom condition expression (or array of expressions, combined with logical AND). In a test result, the runner replaces this with the array of articulated assertion records it evaluated (implicit then custom).
|
|
4142
4567
|
*/
|
|
4143
|
-
assertions?:
|
|
4568
|
+
assertions?: Condition35 | Assertion17[];
|
|
4144
4569
|
/**
|
|
4145
4570
|
* Routing entries evaluated when this step passes. The first entry whose `if` matches applies. `continue`, `stop`, `retry`, and `goToStep` are honored at runtime; `goToTest` is validated but not yet executed.
|
|
4146
4571
|
*/
|
|
4147
|
-
onPass?:
|
|
4572
|
+
onPass?: Routing68[];
|
|
4148
4573
|
/**
|
|
4149
4574
|
* Routing entries evaluated when this step fails. The first entry whose `if` matches applies; the default when none is set stops the test. `continue`, `stop`, `retry`, and `goToStep` are honored at runtime; `goToTest` is validated but not yet executed.
|
|
4150
4575
|
*/
|
|
4151
|
-
onFail?:
|
|
4576
|
+
onFail?: Routing69[];
|
|
4152
4577
|
/**
|
|
4153
4578
|
* Routing entries evaluated when this step produces a warning. The first entry whose `if` matches applies. `continue`, `stop`, `retry`, and `goToStep` are honored at runtime; `goToTest` is validated but not yet executed.
|
|
4154
4579
|
*/
|
|
4155
|
-
onWarning?:
|
|
4580
|
+
onWarning?: Routing70[];
|
|
4156
4581
|
/**
|
|
4157
4582
|
* Routing entries evaluated when this step is skipped (reached but not run — unsafe-blocked or guard-`if` false). The first entry whose `if` matches applies. `continue`, `stop`, and `goToStep` are honored at runtime; `goToTest` is validated but not yet executed. (`retry` is a no-op here — a step that never ran cannot be re-run.)
|
|
4158
4583
|
*/
|
|
4159
|
-
onSkip?:
|
|
4160
|
-
location?:
|
|
4584
|
+
onSkip?: Routing71[];
|
|
4585
|
+
location?: SourceLocation17;
|
|
4161
4586
|
/**
|
|
4162
4587
|
* Path, relative to the run's artifact directory (the report's `runDir`), of the screenshot captured automatically after this step. Always a non-empty, forward-slash, relative path. Present only in test results, when `autoScreenshot` is enabled and the capture succeeded. This is system-populated metadata and should not be set manually.
|
|
4163
4588
|
*/
|
|
@@ -4175,11 +4600,11 @@ export interface Common16 {
|
|
|
4175
4600
|
/**
|
|
4176
4601
|
* Outputs from step processes and user-defined expressions. Use the `outputs` object to reference outputs in subsequent steps. If a user-defined output matches the key for a step-defined output, the user-defined output takes precedence.
|
|
4177
4602
|
*/
|
|
4178
|
-
export interface
|
|
4603
|
+
export interface OutputsStep17 {
|
|
4179
4604
|
/**
|
|
4180
4605
|
* Runtime expression for a user-defined output value.
|
|
4181
4606
|
*
|
|
4182
|
-
* This interface was referenced by `
|
|
4607
|
+
* This interface was referenced by `OutputsStep17`'s JSON-Schema definition
|
|
4183
4608
|
* via the `patternProperty` "^[A-Za-z0-9_]+$".
|
|
4184
4609
|
*/
|
|
4185
4610
|
[k: string]: string;
|
|
@@ -4187,11 +4612,11 @@ export interface OutputsStep16 {
|
|
|
4187
4612
|
/**
|
|
4188
4613
|
* Environment variables to set from user-defined expressions.
|
|
4189
4614
|
*/
|
|
4190
|
-
export interface
|
|
4615
|
+
export interface VariablesStep17 {
|
|
4191
4616
|
/**
|
|
4192
4617
|
* Runtime expression for a user-defined output value.
|
|
4193
4618
|
*
|
|
4194
|
-
* This interface was referenced by `
|
|
4619
|
+
* This interface was referenced by `VariablesStep17`'s JSON-Schema definition
|
|
4195
4620
|
* via the `patternProperty` "^[A-Za-z0-9_]+$".
|
|
4196
4621
|
*/
|
|
4197
4622
|
[k: string]: string;
|
|
@@ -4199,7 +4624,7 @@ export interface VariablesStep16 {
|
|
|
4199
4624
|
/**
|
|
4200
4625
|
* An articulated assertion record produced by the runner for a step result. Each record names a single verification check, whether it passed, and the values it compared. The step's result is the roll-up of its assertion results (FAIL > WARNING > all-SKIPPED > PASS). System-populated; appears in test results, not in authored specs.
|
|
4201
4626
|
*/
|
|
4202
|
-
export interface
|
|
4627
|
+
export interface Assertion17 {
|
|
4203
4628
|
/**
|
|
4204
4629
|
* Human-readable articulation of the check, e.g. `exitCode in [0]`.
|
|
4205
4630
|
*/
|
|
@@ -4232,7 +4657,7 @@ export interface Assertion16 {
|
|
|
4232
4657
|
/**
|
|
4233
4658
|
* Source location where this step was detected in the original file. This is system-populated metadata and should not be set manually.
|
|
4234
4659
|
*/
|
|
4235
|
-
export interface
|
|
4660
|
+
export interface SourceLocation17 {
|
|
4236
4661
|
/**
|
|
4237
4662
|
* 1-indexed line number in the source file where the step was detected.
|
|
4238
4663
|
*/
|
|
@@ -4250,7 +4675,7 @@ export interface LoadCookie {
|
|
|
4250
4675
|
loadCookie: LoadCookie1;
|
|
4251
4676
|
[k: string]: unknown;
|
|
4252
4677
|
}
|
|
4253
|
-
export interface
|
|
4678
|
+
export interface Common18 {
|
|
4254
4679
|
/**
|
|
4255
4680
|
* JSON Schema for this object.
|
|
4256
4681
|
*/
|
|
@@ -4267,34 +4692,34 @@ export interface Common17 {
|
|
|
4267
4692
|
* Whether or not the step may be unsafe. Unsafe steps may perform actions that could modify the system or environment in unexpected ways. Unsafe steps are only performed within Docker containers or if unsafe steps are enabled with the `allowUnsafeSteps` config property or the `--allow-unsafe` flag.
|
|
4268
4693
|
*/
|
|
4269
4694
|
unsafe?: boolean;
|
|
4270
|
-
outputs?:
|
|
4271
|
-
variables?:
|
|
4695
|
+
outputs?: OutputsStep18;
|
|
4696
|
+
variables?: VariablesStep18;
|
|
4272
4697
|
/**
|
|
4273
4698
|
* Whether or not this step should act as a breakpoint when debugging is enabled. When `true`, execution will pause at this step when debug mode is enabled.
|
|
4274
4699
|
*/
|
|
4275
4700
|
breakpoint?: boolean;
|
|
4276
|
-
if?:
|
|
4701
|
+
if?: Condition36;
|
|
4277
4702
|
/**
|
|
4278
4703
|
* Assertions for this step. As authored input, a custom condition expression (or array of expressions, combined with logical AND). In a test result, the runner replaces this with the array of articulated assertion records it evaluated (implicit then custom).
|
|
4279
4704
|
*/
|
|
4280
|
-
assertions?:
|
|
4705
|
+
assertions?: Condition37 | Assertion18[];
|
|
4281
4706
|
/**
|
|
4282
4707
|
* Routing entries evaluated when this step passes. The first entry whose `if` matches applies. `continue`, `stop`, `retry`, and `goToStep` are honored at runtime; `goToTest` is validated but not yet executed.
|
|
4283
4708
|
*/
|
|
4284
|
-
onPass?:
|
|
4709
|
+
onPass?: Routing72[];
|
|
4285
4710
|
/**
|
|
4286
4711
|
* Routing entries evaluated when this step fails. The first entry whose `if` matches applies; the default when none is set stops the test. `continue`, `stop`, `retry`, and `goToStep` are honored at runtime; `goToTest` is validated but not yet executed.
|
|
4287
4712
|
*/
|
|
4288
|
-
onFail?:
|
|
4713
|
+
onFail?: Routing73[];
|
|
4289
4714
|
/**
|
|
4290
4715
|
* Routing entries evaluated when this step produces a warning. The first entry whose `if` matches applies. `continue`, `stop`, `retry`, and `goToStep` are honored at runtime; `goToTest` is validated but not yet executed.
|
|
4291
4716
|
*/
|
|
4292
|
-
onWarning?:
|
|
4717
|
+
onWarning?: Routing74[];
|
|
4293
4718
|
/**
|
|
4294
4719
|
* Routing entries evaluated when this step is skipped (reached but not run — unsafe-blocked or guard-`if` false). The first entry whose `if` matches applies. `continue`, `stop`, and `goToStep` are honored at runtime; `goToTest` is validated but not yet executed. (`retry` is a no-op here — a step that never ran cannot be re-run.)
|
|
4295
4720
|
*/
|
|
4296
|
-
onSkip?:
|
|
4297
|
-
location?:
|
|
4721
|
+
onSkip?: Routing75[];
|
|
4722
|
+
location?: SourceLocation18;
|
|
4298
4723
|
/**
|
|
4299
4724
|
* Path, relative to the run's artifact directory (the report's `runDir`), of the screenshot captured automatically after this step. Always a non-empty, forward-slash, relative path. Present only in test results, when `autoScreenshot` is enabled and the capture succeeded. This is system-populated metadata and should not be set manually.
|
|
4300
4725
|
*/
|
|
@@ -4312,11 +4737,11 @@ export interface Common17 {
|
|
|
4312
4737
|
/**
|
|
4313
4738
|
* Outputs from step processes and user-defined expressions. Use the `outputs` object to reference outputs in subsequent steps. If a user-defined output matches the key for a step-defined output, the user-defined output takes precedence.
|
|
4314
4739
|
*/
|
|
4315
|
-
export interface
|
|
4740
|
+
export interface OutputsStep18 {
|
|
4316
4741
|
/**
|
|
4317
4742
|
* Runtime expression for a user-defined output value.
|
|
4318
4743
|
*
|
|
4319
|
-
* This interface was referenced by `
|
|
4744
|
+
* This interface was referenced by `OutputsStep18`'s JSON-Schema definition
|
|
4320
4745
|
* via the `patternProperty` "^[A-Za-z0-9_]+$".
|
|
4321
4746
|
*/
|
|
4322
4747
|
[k: string]: string;
|
|
@@ -4324,11 +4749,11 @@ export interface OutputsStep17 {
|
|
|
4324
4749
|
/**
|
|
4325
4750
|
* Environment variables to set from user-defined expressions.
|
|
4326
4751
|
*/
|
|
4327
|
-
export interface
|
|
4752
|
+
export interface VariablesStep18 {
|
|
4328
4753
|
/**
|
|
4329
4754
|
* Runtime expression for a user-defined output value.
|
|
4330
4755
|
*
|
|
4331
|
-
* This interface was referenced by `
|
|
4756
|
+
* This interface was referenced by `VariablesStep18`'s JSON-Schema definition
|
|
4332
4757
|
* via the `patternProperty` "^[A-Za-z0-9_]+$".
|
|
4333
4758
|
*/
|
|
4334
4759
|
[k: string]: string;
|
|
@@ -4336,7 +4761,7 @@ export interface VariablesStep17 {
|
|
|
4336
4761
|
/**
|
|
4337
4762
|
* An articulated assertion record produced by the runner for a step result. Each record names a single verification check, whether it passed, and the values it compared. The step's result is the roll-up of its assertion results (FAIL > WARNING > all-SKIPPED > PASS). System-populated; appears in test results, not in authored specs.
|
|
4338
4763
|
*/
|
|
4339
|
-
export interface
|
|
4764
|
+
export interface Assertion18 {
|
|
4340
4765
|
/**
|
|
4341
4766
|
* Human-readable articulation of the check, e.g. `exitCode in [0]`.
|
|
4342
4767
|
*/
|
|
@@ -4369,7 +4794,7 @@ export interface Assertion17 {
|
|
|
4369
4794
|
/**
|
|
4370
4795
|
* Source location where this step was detected in the original file. This is system-populated metadata and should not be set manually.
|
|
4371
4796
|
*/
|
|
4372
|
-
export interface
|
|
4797
|
+
export interface SourceLocation18 {
|
|
4373
4798
|
/**
|
|
4374
4799
|
* 1-indexed line number in the source file where the step was detected.
|
|
4375
4800
|
*/
|