@griffin-app/griffin-ts 0.1.0 → 0.1.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/builder.d.ts +4 -4
- package/dist/builder.d.ts.map +1 -1
- package/dist/builder.js +2 -2
- package/dist/example-sequential.js +7 -7
- package/dist/example-sequential.js.map +1 -1
- package/dist/example.js +2 -2
- package/dist/example.js.map +1 -1
- package/dist/index.d.ts +2 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +4 -4
- package/dist/index.js.map +1 -1
- package/dist/schema-exports.d.ts +1 -1
- package/dist/schema-exports.d.ts.map +1 -1
- package/dist/schema-exports.js +1 -2
- package/dist/schema-exports.js.map +1 -1
- package/dist/schema.d.ts +42 -19
- package/dist/schema.d.ts.map +1 -1
- package/dist/schema.js +8 -6
- package/dist/schema.js.map +1 -1
- package/dist/type-exports.d.ts +1 -1
- package/dist/type-exports.d.ts.map +1 -1
- package/dist/variable.d.ts +62 -0
- package/dist/variable.d.ts.map +1 -0
- package/dist/variable.js +55 -0
- package/dist/variable.js.map +1 -0
- package/package.json +1 -2
- package/src/builder.ts +4 -4
- package/src/example-sequential.ts +8 -8
- package/src/example.ts +3 -3
- package/src/index.ts +2 -1
- package/src/schema-exports.ts +0 -1
- package/src/schema.ts +8 -6
- package/src/type-exports.ts +0 -1
- package/src/variable.ts +121 -0
- package/src/target.ts +0 -55
package/dist/builder.d.ts
CHANGED
|
@@ -98,8 +98,8 @@ export declare function createGraphBuilder(config: {
|
|
|
98
98
|
*/
|
|
99
99
|
export interface EndpointConfig {
|
|
100
100
|
method: "GET" | "POST" | "PUT" | "DELETE" | "PATCH" | "HEAD" | "OPTIONS" | "CONNECT" | "TRACE";
|
|
101
|
-
path: string;
|
|
102
|
-
base: Endpoint["base"];
|
|
101
|
+
path: string | Endpoint["path"];
|
|
102
|
+
base: string | Endpoint["base"];
|
|
103
103
|
response_format: "JSON" | "XML" | "TEXT";
|
|
104
104
|
headers?: Record<string, any>;
|
|
105
105
|
body?: any;
|
|
@@ -112,12 +112,12 @@ export interface EndpointConfig {
|
|
|
112
112
|
*
|
|
113
113
|
* @example
|
|
114
114
|
* ```typescript
|
|
115
|
-
* import {
|
|
115
|
+
* import { variable } from './variable';
|
|
116
116
|
*
|
|
117
117
|
* builder.addNode("health", Endpoint({
|
|
118
118
|
* method: GET,
|
|
119
119
|
* path: "/health",
|
|
120
|
-
* base:
|
|
120
|
+
* base: variable("api-gateway"),
|
|
121
121
|
* response_format: JSON
|
|
122
122
|
* }));
|
|
123
123
|
* ```
|
package/dist/builder.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"builder.d.ts","sourceRoot":"","sources":["../src/builder.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,UAAU,EACV,IAAI,EAEJ,SAAS,EAGT,QAAQ,EAER,IAAI,EACJ,UAAU,EAEV,aAAa,EACd,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,KAAK,KAAK,IAAI,SAAS,EAAE,KAAK,GAAG,IAAI,OAAO,EAAE,MAAM,aAAa,CAAC;AAI3E;;;GAGG;AACH,MAAM,MAAM,aAAa,GAAG,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;AAE7C;;;;;;;GAOG;AACH,MAAM,WAAW,WAAW,CAC1B,QAAQ,SAAS,MAAM,GAAG,KAAK,EAC/B,SAAS,SAAS,MAAM,GAAG,KAAK,EAChC,QAAQ,SAAS,MAAM,GAAG,KAAK;IAE/B;;;;;;;;;;;OAWG;IACH,OAAO,CAAC,IAAI,SAAS,MAAM,EACzB,IAAI,EAAE,IAAI,EACV,IAAI,EAAE,aAAa,GAClB,WAAW,CAAC,QAAQ,GAAG,IAAI,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC;IAErD;;;;;;;;;;;;;;;;;;;OAmBG;IACH,OAAO,CACL,IAAI,SAAS,SAAS,GAAG,OAAO,CAAC,QAAQ,EAAE,SAAS,CAAC,EACrD,EAAE,SAAS,OAAO,GAAG,OAAO,CAAC,QAAQ,EAAE,IAAI,CAAC,EAE5C,IAAI,EAAE,IAAI,EACV,EAAE,EAAE,EAAE,GACL,WAAW,CACZ,QAAQ,EACR,IAAI,SAAS,SAAS,GAAG,SAAS,GAAG,SAAS,GAAG,IAAI,EACrD,EAAE,SAAS,OAAO,GAAG,QAAQ,GAAG,QAAQ,GAAG,EAAE,CAC9C,CAAC;IAEF;;;;;;;;OAQG;IACH,KAAK,EAAE,CAAC,OAAO,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,GACjD,CAAC,OAAO,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,GAC3C,MAAM,UAAU,GAChB;QACE,KAAK,EAAE,mCAAmC,CAAC;QAC3C,WAAW,EAAE,OAAO,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;KAC1C,GACH;QACE,KAAK,EAAE,mCAAmC,CAAC;QAC3C,WAAW,EAAE,OAAO,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;KAC3C,CAAC;CACP;AA2ED;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,wBAAgB,kBAAkB,CAAC,MAAM,EAAE;IACzC,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,CAAC,EAAE,SAAS,CAAC;IACtB,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;CACtB,GAAG,WAAW,CAEd;AAMD;;;GAGG;AACH,MAAM,WAAW,cAAc;IAC7B,MAAM,EACF,KAAK,GACL,MAAM,GACN,KAAK,GACL,QAAQ,GACR,OAAO,GACP,MAAM,GACN,SAAS,GACT,SAAS,GACT,OAAO,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"builder.d.ts","sourceRoot":"","sources":["../src/builder.ts"],"names":[],"mappings":"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"}
|
package/dist/builder.js
CHANGED
|
@@ -80,12 +80,12 @@ function createGraphBuilder(config) {
|
|
|
80
80
|
*
|
|
81
81
|
* @example
|
|
82
82
|
* ```typescript
|
|
83
|
-
* import {
|
|
83
|
+
* import { variable } from './variable';
|
|
84
84
|
*
|
|
85
85
|
* builder.addNode("health", Endpoint({
|
|
86
86
|
* method: GET,
|
|
87
87
|
* path: "/health",
|
|
88
|
-
* base:
|
|
88
|
+
* base: variable("api-gateway"),
|
|
89
89
|
* response_format: JSON
|
|
90
90
|
* }));
|
|
91
91
|
* ```
|
|
@@ -19,7 +19,7 @@ const healthCheck = (0, index_1.createTestBuilder)({
|
|
|
19
19
|
})
|
|
20
20
|
.request("health", {
|
|
21
21
|
method: index_1.GET,
|
|
22
|
-
base: (0, index_1.
|
|
22
|
+
base: (0, index_1.variable)("api-service"),
|
|
23
23
|
response_format: index_1.Json,
|
|
24
24
|
path: "/health",
|
|
25
25
|
})
|
|
@@ -40,7 +40,7 @@ const userJourney = (0, index_1.createTestBuilder)({
|
|
|
40
40
|
})
|
|
41
41
|
.request("create_user", {
|
|
42
42
|
method: index_1.POST,
|
|
43
|
-
base: (0, index_1.
|
|
43
|
+
base: (0, index_1.variable)("api-service"),
|
|
44
44
|
response_format: index_1.Json,
|
|
45
45
|
path: "/api/v1/users",
|
|
46
46
|
body: {
|
|
@@ -63,7 +63,7 @@ const userJourney = (0, index_1.createTestBuilder)({
|
|
|
63
63
|
.wait("pause", index_1.WaitDuration.seconds(2))
|
|
64
64
|
.request("get_user", {
|
|
65
65
|
method: index_1.GET,
|
|
66
|
-
base: (0, index_1.
|
|
66
|
+
base: (0, index_1.variable)("api-service"),
|
|
67
67
|
response_format: index_1.Json,
|
|
68
68
|
path: "/api/v1/users/test@example.com",
|
|
69
69
|
})
|
|
@@ -85,7 +85,7 @@ const performanceCheck = (0, index_1.createTestBuilder)({
|
|
|
85
85
|
})
|
|
86
86
|
.request("api_call", {
|
|
87
87
|
method: index_1.GET,
|
|
88
|
-
base: (0, index_1.
|
|
88
|
+
base: (0, index_1.variable)("api-service"),
|
|
89
89
|
response_format: index_1.Json,
|
|
90
90
|
path: "/api/v1/metrics",
|
|
91
91
|
})
|
|
@@ -114,7 +114,7 @@ const orderWorkflow = (0, index_1.createTestBuilder)({
|
|
|
114
114
|
})
|
|
115
115
|
.request("create_order", {
|
|
116
116
|
method: index_1.POST,
|
|
117
|
-
base: (0, index_1.
|
|
117
|
+
base: (0, index_1.variable)("api-service"),
|
|
118
118
|
response_format: index_1.Json,
|
|
119
119
|
path: "/api/v1/orders",
|
|
120
120
|
body: {
|
|
@@ -130,7 +130,7 @@ const orderWorkflow = (0, index_1.createTestBuilder)({
|
|
|
130
130
|
])
|
|
131
131
|
.request("confirm_order", {
|
|
132
132
|
method: index_1.POST,
|
|
133
|
-
base: (0, index_1.
|
|
133
|
+
base: (0, index_1.variable)("api-service"),
|
|
134
134
|
response_format: index_1.Json,
|
|
135
135
|
path: "/api/v1/orders/confirm",
|
|
136
136
|
body: {
|
|
@@ -145,7 +145,7 @@ const orderWorkflow = (0, index_1.createTestBuilder)({
|
|
|
145
145
|
.wait("processing_time", index_1.WaitDuration.seconds(5))
|
|
146
146
|
.request("check_order", {
|
|
147
147
|
method: index_1.GET,
|
|
148
|
-
base: (0, index_1.
|
|
148
|
+
base: (0, index_1.variable)("api-service"),
|
|
149
149
|
response_format: index_1.Json,
|
|
150
150
|
path: "/api/v1/orders/${create_order.body.order_id}",
|
|
151
151
|
})
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"example-sequential.js","sourceRoot":"","sources":["../src/example-sequential.ts"],"names":[],"mappings":";AAAA;;;;;;;;GAQG;;AAEH,mCASiB;AAEjB,+EAA+E;AAC/E,wDAAwD;AACxD,+EAA+E;AAE/E,MAAM,WAAW,GAAG,IAAA,yBAAiB,EAAC;IACpC,IAAI,EAAE,cAAc;IACpB,SAAS,EAAE,iBAAS,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE;CACvC,CAAC;KACC,OAAO,CAAC,QAAQ,EAAE;IACjB,MAAM,EAAE,WAAG;IACX,IAAI,EAAE,IAAA,
|
|
1
|
+
{"version":3,"file":"example-sequential.js","sourceRoot":"","sources":["../src/example-sequential.ts"],"names":[],"mappings":"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"}
|
package/dist/example.js
CHANGED
|
@@ -14,13 +14,13 @@ const plan = (0, index_1.createGraphBuilder)({
|
|
|
14
14
|
})
|
|
15
15
|
.addNode("create_foo", (0, index_1.Endpoint)({
|
|
16
16
|
method: index_1.POST,
|
|
17
|
-
base: (0, index_1.
|
|
17
|
+
base: (0, index_1.variable)("api-service"),
|
|
18
18
|
response_format: index_1.Json,
|
|
19
19
|
path: "/api/v1/foo",
|
|
20
20
|
}))
|
|
21
21
|
.addNode("get_foo", (0, index_1.Endpoint)({
|
|
22
22
|
method: index_1.GET,
|
|
23
|
-
base: (0, index_1.
|
|
23
|
+
base: (0, index_1.variable)("api-service"),
|
|
24
24
|
response_format: index_1.Json,
|
|
25
25
|
path: "/api/v1/foo",
|
|
26
26
|
}))
|
package/dist/example.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"example.js","sourceRoot":"","sources":["../src/example.ts"],"names":[],"mappings":";AAAA;;;;;;GAMG;;AAEH,mCAaiB;AAEjB,MAAM,IAAI,GAAG,IAAA,0BAAkB,EAAC;IAC9B,IAAI,EAAE,eAAe;IACrB,SAAS,EAAE,iBAAS,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE;CACvC,CAAC;KACC,OAAO,CACN,YAAY,EACZ,IAAA,gBAAQ,EAAC;IACP,MAAM,EAAE,YAAI;IACZ,IAAI,EAAE,IAAA,
|
|
1
|
+
{"version":3,"file":"example.js","sourceRoot":"","sources":["../src/example.ts"],"names":[],"mappings":";AAAA;;;;;;GAMG;;AAEH,mCAaiB;AAEjB,MAAM,IAAI,GAAG,IAAA,0BAAkB,EAAC;IAC9B,IAAI,EAAE,eAAe;IACrB,SAAS,EAAE,iBAAS,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE;CACvC,CAAC;KACC,OAAO,CACN,YAAY,EACZ,IAAA,gBAAQ,EAAC;IACP,MAAM,EAAE,YAAI;IACZ,IAAI,EAAE,IAAA,gBAAQ,EAAC,aAAa,CAAC;IAC7B,eAAe,EAAE,YAAI;IACrB,IAAI,EAAE,aAAa;CACpB,CAAC,CACH;KACA,OAAO,CACN,SAAS,EACT,IAAA,gBAAQ,EAAC;IACP,MAAM,EAAE,WAAG;IACX,IAAI,EAAE,IAAA,gBAAQ,EAAC,aAAa,CAAC;IAC7B,eAAe,EAAE,YAAI;IACrB,IAAI,EAAE,aAAa;CACpB,CAAC,CACH;KACA,OAAO,CAAC,YAAY,EAAE,IAAA,YAAI,EAAC,oBAAY,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC;IACrD,oFAAoF;IACpF,4FAA4F;KAC3F,OAAO,CAAC,aAAK,EAAE,YAAY,CAAC;KAC5B,OAAO,CAAC,YAAY,EAAE,SAAS,CAAC;KAChC,OAAO,CAAC,SAAS,EAAE,YAAY,CAAC;KAChC,OAAO,CAAC,YAAY,EAAE,WAAG,CAAC;KAC1B,KAAK,EAAE,CAAC;AAEX,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC"}
|
package/dist/index.d.ts
CHANGED
|
@@ -12,7 +12,8 @@ export { Endpoint, Wait, Assertion } from "./builder";
|
|
|
12
12
|
export type { EndpointConfig, WaitDuration as WaitDurationType, } from "./builder";
|
|
13
13
|
export { Frequency } from "./frequency";
|
|
14
14
|
export { WaitDuration } from "./wait";
|
|
15
|
-
export {
|
|
15
|
+
export { variable, isVariableRef } from "./variable";
|
|
16
|
+
export type { VariableRef } from "./variable";
|
|
16
17
|
export { secret, isSecretRef } from "./secrets";
|
|
17
18
|
export type { SecretRefData, SecretOptions } from "./secrets";
|
|
18
19
|
export { START, END } from "./constants";
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAMH,OAAO,EAAE,kBAAkB,EAAE,MAAM,WAAW,CAAC;AAC/C,YAAY,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AAE7C,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACzD,YAAY,EACV,qBAAqB,EACrB,iBAAiB,GAClB,MAAM,sBAAsB,CAAC;AAM9B,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AACtD,YAAY,EACV,cAAc,EACd,YAAY,IAAI,gBAAgB,GACjC,MAAM,WAAW,CAAC;AAMnB,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AACtC,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAMH,OAAO,EAAE,kBAAkB,EAAE,MAAM,WAAW,CAAC;AAC/C,YAAY,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AAE7C,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACzD,YAAY,EACV,qBAAqB,EACrB,iBAAiB,GAClB,MAAM,sBAAsB,CAAC;AAM9B,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AACtD,YAAY,EACV,cAAc,EACd,YAAY,IAAI,gBAAgB,GACjC,MAAM,WAAW,CAAC;AAMnB,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AACtC,OAAO,EAAE,QAAQ,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AACrD,YAAY,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAC9C,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AAChD,YAAY,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAM9D,OAAO,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,aAAa,CAAC;AACzC,YAAY,EAAE,KAAK,IAAI,SAAS,EAAE,GAAG,IAAI,OAAO,EAAE,MAAM,aAAa,CAAC;AAEtE,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AAC/D,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,oBAAoB,CAAC;AAMrD,OAAO,EACL,MAAM,EACN,aAAa,EACb,cAAc,EACd,uBAAuB,EACvB,gBAAgB,GACjB,MAAM,cAAc,CAAC;AAEtB,YAAY,EACV,mBAAmB,EACnB,cAAc,EACd,eAAe,EACf,UAAU,EACV,eAAe,EACf,WAAW,GACZ,MAAM,cAAc,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
* Import schema-derived types from "griffin/types"
|
|
7
7
|
*/
|
|
8
8
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9
|
-
exports.createStateProxy = exports.BinaryPredicateOperator = exports.UnaryPredicate = exports.AssertBuilder = exports.Assert = exports.Text = exports.Xml = exports.Json = exports.PATCH = exports.DELETE = exports.PUT = exports.POST = exports.GET = exports.END = exports.START = exports.isSecretRef = exports.secret = exports.
|
|
9
|
+
exports.createStateProxy = exports.BinaryPredicateOperator = exports.UnaryPredicate = exports.AssertBuilder = exports.Assert = exports.Text = exports.Xml = exports.Json = exports.PATCH = exports.DELETE = exports.PUT = exports.POST = exports.GET = exports.END = exports.START = exports.isSecretRef = exports.secret = exports.isVariableRef = exports.variable = exports.WaitDuration = exports.Frequency = exports.Assertion = exports.Wait = exports.Endpoint = exports.createTestBuilder = exports.createGraphBuilder = void 0;
|
|
10
10
|
// ============================================================================
|
|
11
11
|
// DSL Builders
|
|
12
12
|
// ============================================================================
|
|
@@ -28,9 +28,9 @@ var frequency_1 = require("./frequency");
|
|
|
28
28
|
Object.defineProperty(exports, "Frequency", { enumerable: true, get: function () { return frequency_1.Frequency; } });
|
|
29
29
|
var wait_1 = require("./wait");
|
|
30
30
|
Object.defineProperty(exports, "WaitDuration", { enumerable: true, get: function () { return wait_1.WaitDuration; } });
|
|
31
|
-
var
|
|
32
|
-
Object.defineProperty(exports, "
|
|
33
|
-
Object.defineProperty(exports, "
|
|
31
|
+
var variable_1 = require("./variable");
|
|
32
|
+
Object.defineProperty(exports, "variable", { enumerable: true, get: function () { return variable_1.variable; } });
|
|
33
|
+
Object.defineProperty(exports, "isVariableRef", { enumerable: true, get: function () { return variable_1.isVariableRef; } });
|
|
34
34
|
var secrets_1 = require("./secrets");
|
|
35
35
|
Object.defineProperty(exports, "secret", { enumerable: true, get: function () { return secrets_1.secret; } });
|
|
36
36
|
Object.defineProperty(exports, "isSecretRef", { enumerable: true, get: function () { return secrets_1.isSecretRef; } });
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;AAEH,+EAA+E;AAC/E,eAAe;AACf,+EAA+E;AAE/E,qCAA+C;AAAtC,6GAAA,kBAAkB,OAAA;AAG3B,2DAAyD;AAAhD,uHAAA,iBAAiB,OAAA;AAM1B,+EAA+E;AAC/E,qBAAqB;AACrB,+EAA+E;AAE/E,qCAAsD;AAA7C,mGAAA,QAAQ,OAAA;AAAE,+FAAA,IAAI,OAAA;AAAE,oGAAA,SAAS,OAAA;AAMlC,+EAA+E;AAC/E,cAAc;AACd,+EAA+E;AAE/E,yCAAwC;AAA/B,sGAAA,SAAS,OAAA;AAClB,+BAAsC;AAA7B,oGAAA,YAAY,OAAA;AACrB,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;AAEH,+EAA+E;AAC/E,eAAe;AACf,+EAA+E;AAE/E,qCAA+C;AAAtC,6GAAA,kBAAkB,OAAA;AAG3B,2DAAyD;AAAhD,uHAAA,iBAAiB,OAAA;AAM1B,+EAA+E;AAC/E,qBAAqB;AACrB,+EAA+E;AAE/E,qCAAsD;AAA7C,mGAAA,QAAQ,OAAA;AAAE,+FAAA,IAAI,OAAA;AAAE,oGAAA,SAAS,OAAA;AAMlC,+EAA+E;AAC/E,cAAc;AACd,+EAA+E;AAE/E,yCAAwC;AAA/B,sGAAA,SAAS,OAAA;AAClB,+BAAsC;AAA7B,oGAAA,YAAY,OAAA;AACrB,uCAAqD;AAA5C,oGAAA,QAAQ,OAAA;AAAE,yGAAA,aAAa,OAAA;AAEhC,qCAAgD;AAAvC,iGAAA,MAAM,OAAA;AAAE,sGAAA,WAAW,OAAA;AAG5B,+EAA+E;AAC/E,gBAAgB;AAChB,+EAA+E;AAE/E,yCAAyC;AAAhC,kGAAA,KAAK,OAAA;AAAE,gGAAA,GAAG,OAAA;AAGnB,+CAA+D;AAAtD,mGAAA,GAAG,OAAA;AAAE,oGAAA,IAAI,OAAA;AAAE,mGAAA,GAAG,OAAA;AAAE,sGAAA,MAAM,OAAA;AAAE,qGAAA,KAAK,OAAA;AACtC,uDAAqD;AAA5C,wGAAA,IAAI,OAAA;AAAE,uGAAA,GAAG,OAAA;AAAE,wGAAA,IAAI,OAAA;AAExB,+EAA+E;AAC/E,gBAAgB;AAChB,+EAA+E;AAE/E,2CAMsB;AALpB,oGAAA,MAAM,OAAA;AACN,2GAAA,aAAa,OAAA;AACb,4GAAA,cAAc,OAAA;AACd,qHAAA,uBAAuB,OAAA;AACvB,8GAAA,gBAAgB,OAAA"}
|
package/dist/schema-exports.d.ts
CHANGED
|
@@ -2,5 +2,5 @@
|
|
|
2
2
|
* TypeBox schemas and enums for griffin test plans.
|
|
3
3
|
* Import from "griffin/schema" to access validation schemas.
|
|
4
4
|
*/
|
|
5
|
-
export { SecretRefDataSchema, SecretRefSchema, SecretOrStringSchema, ResponseFormatSchema, HttpMethodSchema,
|
|
5
|
+
export { SecretRefDataSchema, SecretRefSchema, SecretOrStringSchema, ResponseFormatSchema, HttpMethodSchema, EndpointSchema, FrequencySchema, WaitSchema, JSONPathSchema, XMLPathSchema, TextPathSchema, UnaryPredicateSchema, BinaryPredicateOperatorSchema, BinaryPredicateSchema, JSONAssertionSchema, XMLAssertionSchema, TextAssertionSchema, AssertionSchema, AssertionsSchema, NodeTypeSchema, NodeSchema, EdgeSchema, TestPlanV1Schema, FrequencyUnit, ResponseFormat, HttpMethod, NodeType, UnaryPredicate, BinaryPredicateOperator, TEST_PLAN_VERSION, } from "./schema.js";
|
|
6
6
|
//# sourceMappingURL=schema-exports.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schema-exports.d.ts","sourceRoot":"","sources":["../src/schema-exports.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAEL,mBAAmB,EACnB,eAAe,EACf,oBAAoB,EACpB,oBAAoB,EACpB,gBAAgB,EAChB,
|
|
1
|
+
{"version":3,"file":"schema-exports.d.ts","sourceRoot":"","sources":["../src/schema-exports.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAEL,mBAAmB,EACnB,eAAe,EACf,oBAAoB,EACpB,oBAAoB,EACpB,gBAAgB,EAChB,cAAc,EACd,eAAe,EACf,UAAU,EACV,cAAc,EACd,aAAa,EACb,cAAc,EACd,oBAAoB,EACpB,6BAA6B,EAC7B,qBAAqB,EACrB,mBAAmB,EACnB,kBAAkB,EAClB,mBAAmB,EACnB,eAAe,EACf,gBAAgB,EAChB,cAAc,EACd,UAAU,EACV,UAAU,EACV,gBAAgB,EAGhB,aAAa,EACb,cAAc,EACd,UAAU,EACV,QAAQ,EACR,cAAc,EACd,uBAAuB,EAGvB,iBAAiB,GAClB,MAAM,aAAa,CAAC"}
|
package/dist/schema-exports.js
CHANGED
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
* Import from "griffin/schema" to access validation schemas.
|
|
5
5
|
*/
|
|
6
6
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
7
|
-
exports.TEST_PLAN_VERSION = exports.BinaryPredicateOperator = exports.UnaryPredicate = exports.NodeType = exports.HttpMethod = exports.ResponseFormat = exports.FrequencyUnit = exports.TestPlanV1Schema = exports.EdgeSchema = exports.NodeSchema = exports.NodeTypeSchema = exports.AssertionsSchema = exports.AssertionSchema = exports.TextAssertionSchema = exports.XMLAssertionSchema = exports.JSONAssertionSchema = exports.BinaryPredicateSchema = exports.BinaryPredicateOperatorSchema = exports.UnaryPredicateSchema = exports.TextPathSchema = exports.XMLPathSchema = exports.JSONPathSchema = exports.WaitSchema = exports.FrequencySchema = exports.EndpointSchema = exports.
|
|
7
|
+
exports.TEST_PLAN_VERSION = exports.BinaryPredicateOperator = exports.UnaryPredicate = exports.NodeType = exports.HttpMethod = exports.ResponseFormat = exports.FrequencyUnit = exports.TestPlanV1Schema = exports.EdgeSchema = exports.NodeSchema = exports.NodeTypeSchema = exports.AssertionsSchema = exports.AssertionSchema = exports.TextAssertionSchema = exports.XMLAssertionSchema = exports.JSONAssertionSchema = exports.BinaryPredicateSchema = exports.BinaryPredicateOperatorSchema = exports.UnaryPredicateSchema = exports.TextPathSchema = exports.XMLPathSchema = exports.JSONPathSchema = exports.WaitSchema = exports.FrequencySchema = exports.EndpointSchema = exports.HttpMethodSchema = exports.ResponseFormatSchema = exports.SecretOrStringSchema = exports.SecretRefSchema = exports.SecretRefDataSchema = void 0;
|
|
8
8
|
var schema_js_1 = require("./schema.js");
|
|
9
9
|
// Schema values
|
|
10
10
|
Object.defineProperty(exports, "SecretRefDataSchema", { enumerable: true, get: function () { return schema_js_1.SecretRefDataSchema; } });
|
|
@@ -12,7 +12,6 @@ Object.defineProperty(exports, "SecretRefSchema", { enumerable: true, get: funct
|
|
|
12
12
|
Object.defineProperty(exports, "SecretOrStringSchema", { enumerable: true, get: function () { return schema_js_1.SecretOrStringSchema; } });
|
|
13
13
|
Object.defineProperty(exports, "ResponseFormatSchema", { enumerable: true, get: function () { return schema_js_1.ResponseFormatSchema; } });
|
|
14
14
|
Object.defineProperty(exports, "HttpMethodSchema", { enumerable: true, get: function () { return schema_js_1.HttpMethodSchema; } });
|
|
15
|
-
Object.defineProperty(exports, "TargetRefSchema", { enumerable: true, get: function () { return schema_js_1.TargetRefSchema; } });
|
|
16
15
|
Object.defineProperty(exports, "EndpointSchema", { enumerable: true, get: function () { return schema_js_1.EndpointSchema; } });
|
|
17
16
|
Object.defineProperty(exports, "FrequencySchema", { enumerable: true, get: function () { return schema_js_1.FrequencySchema; } });
|
|
18
17
|
Object.defineProperty(exports, "WaitSchema", { enumerable: true, get: function () { return schema_js_1.WaitSchema; } });
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schema-exports.js","sourceRoot":"","sources":["../src/schema-exports.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;AAEH,
|
|
1
|
+
{"version":3,"file":"schema-exports.js","sourceRoot":"","sources":["../src/schema-exports.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;AAEH,yCAoCqB;AAnCnB,gBAAgB;AAChB,gHAAA,mBAAmB,OAAA;AACnB,4GAAA,eAAe,OAAA;AACf,iHAAA,oBAAoB,OAAA;AACpB,iHAAA,oBAAoB,OAAA;AACpB,6GAAA,gBAAgB,OAAA;AAChB,2GAAA,cAAc,OAAA;AACd,4GAAA,eAAe,OAAA;AACf,uGAAA,UAAU,OAAA;AACV,2GAAA,cAAc,OAAA;AACd,0GAAA,aAAa,OAAA;AACb,2GAAA,cAAc,OAAA;AACd,iHAAA,oBAAoB,OAAA;AACpB,0HAAA,6BAA6B,OAAA;AAC7B,kHAAA,qBAAqB,OAAA;AACrB,gHAAA,mBAAmB,OAAA;AACnB,+GAAA,kBAAkB,OAAA;AAClB,gHAAA,mBAAmB,OAAA;AACnB,4GAAA,eAAe,OAAA;AACf,6GAAA,gBAAgB,OAAA;AAChB,2GAAA,cAAc,OAAA;AACd,uGAAA,UAAU,OAAA;AACV,uGAAA,UAAU,OAAA;AACV,6GAAA,gBAAgB,OAAA;AAEhB,yBAAyB;AACzB,0GAAA,aAAa,OAAA;AACb,2GAAA,cAAc,OAAA;AACd,uGAAA,UAAU,OAAA;AACV,qGAAA,QAAQ,OAAA;AACR,2GAAA,cAAc,OAAA;AACd,oHAAA,uBAAuB,OAAA;AAEvB,YAAY;AACZ,8GAAA,iBAAiB,OAAA"}
|
package/dist/schema.d.ts
CHANGED
|
@@ -50,20 +50,29 @@ export declare enum NodeType {
|
|
|
50
50
|
}
|
|
51
51
|
export declare const ResponseFormatSchema: Type.TUnion<[Type.TLiteral<ResponseFormat.JSON>, Type.TLiteral<ResponseFormat.XML>, Type.TLiteral<ResponseFormat.TEXT>]>;
|
|
52
52
|
export declare const HttpMethodSchema: Type.TUnion<[Type.TLiteral<HttpMethod.GET>, Type.TLiteral<HttpMethod.POST>, Type.TLiteral<HttpMethod.PUT>, Type.TLiteral<HttpMethod.DELETE>, Type.TLiteral<HttpMethod.PATCH>, Type.TLiteral<HttpMethod.HEAD>, Type.TLiteral<HttpMethod.OPTIONS>, Type.TLiteral<HttpMethod.CONNECT>, Type.TLiteral<HttpMethod.TRACE>]>;
|
|
53
|
-
export declare const
|
|
54
|
-
|
|
55
|
-
|
|
53
|
+
export declare const VariableRefSchema: Type.TObject<{
|
|
54
|
+
$variable: Type.TObject<{
|
|
55
|
+
key: Type.TString;
|
|
56
|
+
template: Type.TOptional<Type.TString>;
|
|
57
|
+
}>;
|
|
56
58
|
}>;
|
|
57
|
-
export type
|
|
59
|
+
export type VariableRef = Static<typeof VariableRefSchema>;
|
|
58
60
|
export declare const EndpointSchema: Type.TObject<{
|
|
59
61
|
id: Type.TString;
|
|
60
62
|
type: Type.TLiteral<NodeType.ENDPOINT>;
|
|
61
63
|
method: Type.TUnion<[Type.TLiteral<HttpMethod.GET>, Type.TLiteral<HttpMethod.POST>, Type.TLiteral<HttpMethod.PUT>, Type.TLiteral<HttpMethod.DELETE>, Type.TLiteral<HttpMethod.PATCH>, Type.TLiteral<HttpMethod.HEAD>, Type.TLiteral<HttpMethod.OPTIONS>, Type.TLiteral<HttpMethod.CONNECT>, Type.TLiteral<HttpMethod.TRACE>]>;
|
|
62
|
-
path: Type.TString
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
64
|
+
path: Type.TUnion<[Type.TString, Type.TObject<{
|
|
65
|
+
$variable: Type.TObject<{
|
|
66
|
+
key: Type.TString;
|
|
67
|
+
template: Type.TOptional<Type.TString>;
|
|
68
|
+
}>;
|
|
69
|
+
}>]>;
|
|
70
|
+
base: Type.TUnion<[Type.TString, Type.TObject<{
|
|
71
|
+
$variable: Type.TObject<{
|
|
72
|
+
key: Type.TString;
|
|
73
|
+
template: Type.TOptional<Type.TString>;
|
|
74
|
+
}>;
|
|
75
|
+
}>]>;
|
|
67
76
|
headers: Type.TOptional<Type.TRecord<"^.*$", Type.TUnion<[Type.TString, Type.TObject<{
|
|
68
77
|
$secret: Type.TObject<{
|
|
69
78
|
provider: Type.TString;
|
|
@@ -192,11 +201,18 @@ export declare const NodeSchema: Type.TUnion<[Type.TObject<{
|
|
|
192
201
|
id: Type.TString;
|
|
193
202
|
type: Type.TLiteral<NodeType.ENDPOINT>;
|
|
194
203
|
method: Type.TUnion<[Type.TLiteral<HttpMethod.GET>, Type.TLiteral<HttpMethod.POST>, Type.TLiteral<HttpMethod.PUT>, Type.TLiteral<HttpMethod.DELETE>, Type.TLiteral<HttpMethod.PATCH>, Type.TLiteral<HttpMethod.HEAD>, Type.TLiteral<HttpMethod.OPTIONS>, Type.TLiteral<HttpMethod.CONNECT>, Type.TLiteral<HttpMethod.TRACE>]>;
|
|
195
|
-
path: Type.TString
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
204
|
+
path: Type.TUnion<[Type.TString, Type.TObject<{
|
|
205
|
+
$variable: Type.TObject<{
|
|
206
|
+
key: Type.TString;
|
|
207
|
+
template: Type.TOptional<Type.TString>;
|
|
208
|
+
}>;
|
|
209
|
+
}>]>;
|
|
210
|
+
base: Type.TUnion<[Type.TString, Type.TObject<{
|
|
211
|
+
$variable: Type.TObject<{
|
|
212
|
+
key: Type.TString;
|
|
213
|
+
template: Type.TOptional<Type.TString>;
|
|
214
|
+
}>;
|
|
215
|
+
}>]>;
|
|
200
216
|
headers: Type.TOptional<Type.TRecord<"^.*$", Type.TUnion<[Type.TString, Type.TObject<{
|
|
201
217
|
$secret: Type.TObject<{
|
|
202
218
|
provider: Type.TString;
|
|
@@ -258,11 +274,18 @@ export declare const TestPlanV1Schema: Type.TObject<{
|
|
|
258
274
|
id: Type.TString;
|
|
259
275
|
type: Type.TLiteral<NodeType.ENDPOINT>;
|
|
260
276
|
method: Type.TUnion<[Type.TLiteral<HttpMethod.GET>, Type.TLiteral<HttpMethod.POST>, Type.TLiteral<HttpMethod.PUT>, Type.TLiteral<HttpMethod.DELETE>, Type.TLiteral<HttpMethod.PATCH>, Type.TLiteral<HttpMethod.HEAD>, Type.TLiteral<HttpMethod.OPTIONS>, Type.TLiteral<HttpMethod.CONNECT>, Type.TLiteral<HttpMethod.TRACE>]>;
|
|
261
|
-
path: Type.TString
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
|
|
277
|
+
path: Type.TUnion<[Type.TString, Type.TObject<{
|
|
278
|
+
$variable: Type.TObject<{
|
|
279
|
+
key: Type.TString;
|
|
280
|
+
template: Type.TOptional<Type.TString>;
|
|
281
|
+
}>;
|
|
282
|
+
}>]>;
|
|
283
|
+
base: Type.TUnion<[Type.TString, Type.TObject<{
|
|
284
|
+
$variable: Type.TObject<{
|
|
285
|
+
key: Type.TString;
|
|
286
|
+
template: Type.TOptional<Type.TString>;
|
|
287
|
+
}>;
|
|
288
|
+
}>]>;
|
|
266
289
|
headers: Type.TOptional<Type.TRecord<"^.*$", Type.TUnion<[Type.TString, Type.TObject<{
|
|
267
290
|
$secret: Type.TObject<{
|
|
268
291
|
provider: Type.TString;
|
package/dist/schema.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../src/schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,KAAK,MAAM,EAAgB,MAAM,SAAS,CAAC;AAE1D,eAAO,MAAM,iBAAiB,QAAQ,CAAC;AAGvC,eAAO,MAAM,mBAAmB;;;;;EAK9B,CAAC;AAEH,eAAO,MAAM,eAAe;;;;;;;EAE1B,CAAC;AAGH,eAAO,MAAM,oBAAoB;;;;;;;IAG/B,CAAC;AAEH,oBAAY,aAAa;IACvB,MAAM,WAAW;IACjB,IAAI,SAAS;IACb,GAAG,QAAQ;CACZ;AAED,oBAAY,cAAc;IACxB,IAAI,SAAS;IACb,GAAG,QAAQ;IACX,IAAI,SAAS;CACd;AAED,oBAAY,UAAU;IACpB,GAAG,QAAQ;IACX,IAAI,SAAS;IACb,GAAG,QAAQ;IACX,MAAM,WAAW;IACjB,KAAK,UAAU;IACf,IAAI,SAAS;IACb,OAAO,YAAY;IACnB,OAAO,YAAY;IACnB,KAAK,UAAU;CAChB;AACD,oBAAY,QAAQ;IAClB,QAAQ,aAAa;IACrB,IAAI,SAAS;IACb,SAAS,cAAc;CACxB;AACD,eAAO,MAAM,oBAAoB,0HAOhC,CAAC;AAEF,eAAO,MAAM,gBAAgB,uTAa5B,CAAC;AAEF,eAAO,MAAM,
|
|
1
|
+
{"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../src/schema.ts"],"names":[],"mappings":"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"}
|
package/dist/schema.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.TestPlanV1Schema = exports.EdgeSchema = exports.NodeSchema = exports.NodeTypeSchema = exports.AssertionsSchema = exports.AssertionSchema = exports.TextAssertionSchema = exports.XMLAssertionSchema = exports.JSONAssertionSchema = exports.BinaryPredicateSchema = exports.BinaryPredicateOperatorSchema = exports.BinaryPredicateOperator = exports.UnaryPredicateSchema = exports.UnaryPredicate = exports.TextPathSchema = exports.XMLPathSchema = exports.JSONPathSchema = exports.WaitSchema = exports.FrequencySchema = exports.EndpointSchema = exports.
|
|
3
|
+
exports.TestPlanV1Schema = exports.EdgeSchema = exports.NodeSchema = exports.NodeTypeSchema = exports.AssertionsSchema = exports.AssertionSchema = exports.TextAssertionSchema = exports.XMLAssertionSchema = exports.JSONAssertionSchema = exports.BinaryPredicateSchema = exports.BinaryPredicateOperatorSchema = exports.BinaryPredicateOperator = exports.UnaryPredicateSchema = exports.UnaryPredicate = exports.TextPathSchema = exports.XMLPathSchema = exports.JSONPathSchema = exports.WaitSchema = exports.FrequencySchema = exports.EndpointSchema = exports.VariableRefSchema = exports.HttpMethodSchema = exports.ResponseFormatSchema = exports.NodeType = exports.HttpMethod = exports.ResponseFormat = exports.FrequencyUnit = exports.SecretOrStringSchema = exports.SecretRefSchema = exports.SecretRefDataSchema = exports.TEST_PLAN_VERSION = void 0;
|
|
4
4
|
const typebox_1 = require("typebox");
|
|
5
5
|
exports.TEST_PLAN_VERSION = "1.0";
|
|
6
6
|
// Secret reference schema for values that may contain secrets
|
|
@@ -64,16 +64,18 @@ exports.HttpMethodSchema = typebox_1.Type.Union([
|
|
|
64
64
|
typebox_1.Type.Literal(HttpMethod.CONNECT),
|
|
65
65
|
typebox_1.Type.Literal(HttpMethod.TRACE),
|
|
66
66
|
], { $id: "HttpMethod" });
|
|
67
|
-
exports.
|
|
68
|
-
|
|
69
|
-
|
|
67
|
+
exports.VariableRefSchema = typebox_1.Type.Object({
|
|
68
|
+
$variable: typebox_1.Type.Object({
|
|
69
|
+
key: typebox_1.Type.String(),
|
|
70
|
+
template: typebox_1.Type.Optional(typebox_1.Type.String()),
|
|
71
|
+
}),
|
|
70
72
|
});
|
|
71
73
|
exports.EndpointSchema = typebox_1.Type.Object({
|
|
72
74
|
id: typebox_1.Type.String(),
|
|
73
75
|
type: typebox_1.Type.Literal(NodeType.ENDPOINT),
|
|
74
76
|
method: exports.HttpMethodSchema,
|
|
75
|
-
path: typebox_1.Type.String(),
|
|
76
|
-
base: exports.
|
|
77
|
+
path: typebox_1.Type.Union([typebox_1.Type.String(), exports.VariableRefSchema]),
|
|
78
|
+
base: typebox_1.Type.Union([typebox_1.Type.String(), exports.VariableRefSchema]),
|
|
77
79
|
headers: typebox_1.Type.Optional(typebox_1.Type.Record(typebox_1.Type.String(), exports.SecretOrStringSchema)),
|
|
78
80
|
body: typebox_1.Type.Optional(typebox_1.Type.Any()), // Body can contain nested SecretRefs
|
|
79
81
|
response_format: exports.ResponseFormatSchema,
|
package/dist/schema.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schema.js","sourceRoot":"","sources":["../src/schema.ts"],"names":[],"mappings":";;;AAAA,qCAA0D;AAE7C,QAAA,iBAAiB,GAAG,KAAK,CAAC;AAEvC,8DAA8D;AACjD,QAAA,mBAAmB,GAAG,cAAI,CAAC,MAAM,CAAC;IAC7C,QAAQ,EAAE,cAAI,CAAC,MAAM,EAAE;IACvB,GAAG,EAAE,cAAI,CAAC,MAAM,EAAE;IAClB,OAAO,EAAE,cAAI,CAAC,QAAQ,CAAC,cAAI,CAAC,MAAM,EAAE,CAAC;IACrC,KAAK,EAAE,cAAI,CAAC,QAAQ,CAAC,cAAI,CAAC,MAAM,EAAE,CAAC;CACpC,CAAC,CAAC;AAEU,QAAA,eAAe,GAAG,cAAI,CAAC,MAAM,CAAC;IACzC,OAAO,EAAE,2BAAmB;CAC7B,CAAC,CAAC;AAEH,2EAA2E;AAC9D,QAAA,oBAAoB,GAAG,cAAI,CAAC,KAAK,CAAC;IAC7C,cAAI,CAAC,MAAM,EAAE;IACb,uBAAe;CAChB,CAAC,CAAC;AAEH,IAAY,aAIX;AAJD,WAAY,aAAa;IACvB,kCAAiB,CAAA;IACjB,8BAAa,CAAA;IACb,4BAAW,CAAA;AACb,CAAC,EAJW,aAAa,6BAAb,aAAa,QAIxB;AAED,IAAY,cAIX;AAJD,WAAY,cAAc;IACxB,+BAAa,CAAA;IACb,6BAAW,CAAA;IACX,+BAAa,CAAA;AACf,CAAC,EAJW,cAAc,8BAAd,cAAc,QAIzB;AAED,IAAY,UAUX;AAVD,WAAY,UAAU;IACpB,yBAAW,CAAA;IACX,2BAAa,CAAA;IACb,yBAAW,CAAA;IACX,+BAAiB,CAAA;IACjB,6BAAe,CAAA;IACf,2BAAa,CAAA;IACb,iCAAmB,CAAA;IACnB,iCAAmB,CAAA;IACnB,6BAAe,CAAA;AACjB,CAAC,EAVW,UAAU,0BAAV,UAAU,QAUrB;AACD,IAAY,QAIX;AAJD,WAAY,QAAQ;IAClB,iCAAqB,CAAA;IACrB,yBAAa,CAAA;IACb,mCAAuB,CAAA;AACzB,CAAC,EAJW,QAAQ,wBAAR,QAAQ,QAInB;AACY,QAAA,oBAAoB,GAAG,cAAI,CAAC,KAAK,CAC5C;IACE,cAAI,CAAC,OAAO,CAAC,cAAc,CAAC,IAAI,CAAC;IACjC,cAAI,CAAC,OAAO,CAAC,cAAc,CAAC,GAAG,CAAC;IAChC,cAAI,CAAC,OAAO,CAAC,cAAc,CAAC,IAAI,CAAC;CAClC,EACD,EAAE,GAAG,EAAE,gBAAgB,EAAE,CAC1B,CAAC;AAEW,QAAA,gBAAgB,GAAG,cAAI,CAAC,KAAK,CACxC;IACE,cAAI,CAAC,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC;IAC5B,cAAI,CAAC,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC;IAC7B,cAAI,CAAC,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC;IAC5B,cAAI,CAAC,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC;IAC/B,cAAI,CAAC,OAAO,CAAC,UAAU,CAAC,KAAK,CAAC;IAC9B,cAAI,CAAC,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC;IAC7B,cAAI,CAAC,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC;IAChC,cAAI,CAAC,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC;IAChC,cAAI,CAAC,OAAO,CAAC,UAAU,CAAC,KAAK,CAAC;CAC/B,EACD,EAAE,GAAG,EAAE,YAAY,EAAE,CACtB,CAAC;AAEW,QAAA,
|
|
1
|
+
{"version":3,"file":"schema.js","sourceRoot":"","sources":["../src/schema.ts"],"names":[],"mappings":"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"}
|
package/dist/type-exports.d.ts
CHANGED
|
@@ -2,5 +2,5 @@
|
|
|
2
2
|
* Static types derived from TypeBox schemas.
|
|
3
3
|
* Import from "griffin/types" for TypeScript type checking.
|
|
4
4
|
*/
|
|
5
|
-
export type {
|
|
5
|
+
export type { Endpoint, Frequency, Wait, BinaryPredicate, JSONAssertion, XMLAssertion, TextAssertion, Assertion, Assertions, Node, Edge, TestPlanV1, } from "./schema.js";
|
|
6
6
|
//# sourceMappingURL=type-exports.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"type-exports.d.ts","sourceRoot":"","sources":["../src/type-exports.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,YAAY,EACV,
|
|
1
|
+
{"version":3,"file":"type-exports.d.ts","sourceRoot":"","sources":["../src/type-exports.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,YAAY,EACV,QAAQ,EACR,SAAS,EACT,IAAI,EACJ,eAAe,EACf,aAAa,EACb,YAAY,EACZ,aAAa,EACb,SAAS,EACT,UAAU,EACV,IAAI,EACJ,IAAI,EACJ,UAAU,GACX,MAAM,aAAa,CAAC"}
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Variable reference utilities for griffin DSL.
|
|
3
|
+
*
|
|
4
|
+
* Variables are resolved at evaluation time (when the CLI imports test files)
|
|
5
|
+
* by reading from variables.yaml. The resolved values are baked into the plan.
|
|
6
|
+
*/
|
|
7
|
+
/**
|
|
8
|
+
* A variable reference that will be resolved at evaluation time.
|
|
9
|
+
*/
|
|
10
|
+
export interface VariableRef {
|
|
11
|
+
$variable: {
|
|
12
|
+
key: string;
|
|
13
|
+
template?: string;
|
|
14
|
+
};
|
|
15
|
+
}
|
|
16
|
+
/**
|
|
17
|
+
* Create a variable reference that will be resolved from variables.yaml.
|
|
18
|
+
*
|
|
19
|
+
* Variables are resolved when the CLI evaluates the test file, so the final
|
|
20
|
+
* plan contains resolved string values rather than variable references.
|
|
21
|
+
*
|
|
22
|
+
* @param key - The variable key to look up in variables.yaml
|
|
23
|
+
* @returns A variable reference object
|
|
24
|
+
*
|
|
25
|
+
* @example
|
|
26
|
+
* ```typescript
|
|
27
|
+
* // Simple variable reference
|
|
28
|
+
* builder.addNode("check", Endpoint({
|
|
29
|
+
* method: GET,
|
|
30
|
+
* path: "/health",
|
|
31
|
+
* base: variable("api-service"),
|
|
32
|
+
* response_format: JSON
|
|
33
|
+
* }));
|
|
34
|
+
* ```
|
|
35
|
+
*/
|
|
36
|
+
export declare function variable(key: string): VariableRef;
|
|
37
|
+
/**
|
|
38
|
+
* Create a variable reference with a template for string interpolation.
|
|
39
|
+
*
|
|
40
|
+
* The template uses ${key} syntax where 'key' is the variable name.
|
|
41
|
+
*
|
|
42
|
+
* @param key - The variable key to look up in variables.yaml
|
|
43
|
+
* @param template - Template string with ${key} placeholders
|
|
44
|
+
* @returns A variable reference object
|
|
45
|
+
*
|
|
46
|
+
* @example
|
|
47
|
+
* ```typescript
|
|
48
|
+
* // Template interpolation
|
|
49
|
+
* builder.addNode("versioned", Endpoint({
|
|
50
|
+
* method: GET,
|
|
51
|
+
* path: variable("api-version", "/api/${api-version}/health"),
|
|
52
|
+
* base: variable("api-service"),
|
|
53
|
+
* response_format: JSON
|
|
54
|
+
* }));
|
|
55
|
+
* ```
|
|
56
|
+
*/
|
|
57
|
+
export declare function variable(key: string, template: string): VariableRef;
|
|
58
|
+
/**
|
|
59
|
+
* Type guard to check if a value is a variable reference.
|
|
60
|
+
*/
|
|
61
|
+
export declare function isVariableRef(value: unknown): value is VariableRef;
|
|
62
|
+
//# sourceMappingURL=variable.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"variable.d.ts","sourceRoot":"","sources":["../src/variable.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,SAAS,EAAE;QACT,GAAG,EAAE,MAAM,CAAC;QACZ,QAAQ,CAAC,EAAE,MAAM,CAAC;KACnB,CAAC;CACH;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAgB,QAAQ,CAAC,GAAG,EAAE,MAAM,GAAG,WAAW,CAAC;AAEnD;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAgB,QAAQ,CAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,WAAW,CAAC;AAuCrE;;GAEG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,WAAW,CAmBlE"}
|
package/dist/variable.js
ADDED
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Variable reference utilities for griffin DSL.
|
|
4
|
+
*
|
|
5
|
+
* Variables are resolved at evaluation time (when the CLI imports test files)
|
|
6
|
+
* by reading from variables.yaml. The resolved values are baked into the plan.
|
|
7
|
+
*/
|
|
8
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9
|
+
exports.variable = variable;
|
|
10
|
+
exports.isVariableRef = isVariableRef;
|
|
11
|
+
function variable(key, template) {
|
|
12
|
+
if (!key || typeof key !== "string") {
|
|
13
|
+
throw new Error(`Variable key must be a non-empty string. Got: ${key}`);
|
|
14
|
+
}
|
|
15
|
+
if (key.trim() === "") {
|
|
16
|
+
throw new Error("Variable key cannot be empty or whitespace only");
|
|
17
|
+
}
|
|
18
|
+
if (template !== undefined) {
|
|
19
|
+
if (typeof template !== "string") {
|
|
20
|
+
throw new Error(`Variable template must be a string. Got: ${typeof template}`);
|
|
21
|
+
}
|
|
22
|
+
if (template.trim() === "") {
|
|
23
|
+
throw new Error("Variable template cannot be empty or whitespace only");
|
|
24
|
+
}
|
|
25
|
+
// Validate that template contains the variable key
|
|
26
|
+
const placeholder = `\${${key}}`;
|
|
27
|
+
if (!template.includes(placeholder)) {
|
|
28
|
+
throw new Error(`Variable template must contain \${${key}} placeholder. Got: ${template}`);
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
return {
|
|
32
|
+
$variable: {
|
|
33
|
+
key: key.trim(),
|
|
34
|
+
...(template && { template }),
|
|
35
|
+
},
|
|
36
|
+
};
|
|
37
|
+
}
|
|
38
|
+
/**
|
|
39
|
+
* Type guard to check if a value is a variable reference.
|
|
40
|
+
*/
|
|
41
|
+
function isVariableRef(value) {
|
|
42
|
+
if (typeof value !== "object" || value === null) {
|
|
43
|
+
return false;
|
|
44
|
+
}
|
|
45
|
+
const obj = value;
|
|
46
|
+
if (!("$variable" in obj) ||
|
|
47
|
+
typeof obj.$variable !== "object" ||
|
|
48
|
+
obj.$variable === null) {
|
|
49
|
+
return false;
|
|
50
|
+
}
|
|
51
|
+
const varData = obj.$variable;
|
|
52
|
+
return (typeof varData.key === "string" &&
|
|
53
|
+
(varData.template === undefined || typeof varData.template === "string"));
|
|
54
|
+
}
|
|
55
|
+
//# sourceMappingURL=variable.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"variable.js","sourceRoot":"","sources":["../src/variable.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;AAwDH,4BAmCC;AAKD,sCAmBC;AA3DD,SAAgB,QAAQ,CAAC,GAAW,EAAE,QAAiB;IACrD,IAAI,CAAC,GAAG,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE,CAAC;QACpC,MAAM,IAAI,KAAK,CAAC,iDAAiD,GAAG,EAAE,CAAC,CAAC;IAC1E,CAAC;IAED,IAAI,GAAG,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;QACtB,MAAM,IAAI,KAAK,CAAC,iDAAiD,CAAC,CAAC;IACrE,CAAC;IAED,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;QAC3B,IAAI,OAAO,QAAQ,KAAK,QAAQ,EAAE,CAAC;YACjC,MAAM,IAAI,KAAK,CACb,4CAA4C,OAAO,QAAQ,EAAE,CAC9D,CAAC;QACJ,CAAC;QAED,IAAI,QAAQ,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;YAC3B,MAAM,IAAI,KAAK,CAAC,sDAAsD,CAAC,CAAC;QAC1E,CAAC;QAED,mDAAmD;QACnD,MAAM,WAAW,GAAG,MAAM,GAAG,GAAG,CAAC;QACjC,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,CAAC;YACpC,MAAM,IAAI,KAAK,CACb,qCAAqC,GAAG,uBAAuB,QAAQ,EAAE,CAC1E,CAAC;QACJ,CAAC;IACH,CAAC;IAED,OAAO;QACL,SAAS,EAAE;YACT,GAAG,EAAE,GAAG,CAAC,IAAI,EAAE;YACf,GAAG,CAAC,QAAQ,IAAI,EAAE,QAAQ,EAAE,CAAC;SAC9B;KACF,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,SAAgB,aAAa,CAAC,KAAc;IAC1C,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;QAChD,OAAO,KAAK,CAAC;IACf,CAAC;IAED,MAAM,GAAG,GAAG,KAAgC,CAAC;IAC7C,IACE,CAAC,CAAC,WAAW,IAAI,GAAG,CAAC;QACrB,OAAO,GAAG,CAAC,SAAS,KAAK,QAAQ;QACjC,GAAG,CAAC,SAAS,KAAK,IAAI,EACtB,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IAED,MAAM,OAAO,GAAG,GAAG,CAAC,SAAoC,CAAC;IACzD,OAAO,CACL,OAAO,OAAO,CAAC,GAAG,KAAK,QAAQ;QAC/B,CAAC,OAAO,CAAC,QAAQ,KAAK,SAAS,IAAI,OAAO,OAAO,CAAC,QAAQ,KAAK,QAAQ,CAAC,CACzE,CAAC;AACJ,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@griffin-app/griffin-ts",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.1",
|
|
4
4
|
"description": "TypeScript DSL for defining griffin API tests",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|
|
@@ -37,7 +37,6 @@
|
|
|
37
37
|
"vitest": "^4.0.17"
|
|
38
38
|
},
|
|
39
39
|
"dependencies": {
|
|
40
|
-
"ts-edge": "^1.0.4",
|
|
41
40
|
"typebox": "^1.0.78"
|
|
42
41
|
}
|
|
43
42
|
}
|
package/src/builder.ts
CHANGED
|
@@ -228,8 +228,8 @@ export interface EndpointConfig {
|
|
|
228
228
|
| "OPTIONS"
|
|
229
229
|
| "CONNECT"
|
|
230
230
|
| "TRACE";
|
|
231
|
-
path: string;
|
|
232
|
-
base: Endpoint["base"];
|
|
231
|
+
path: string | Endpoint["path"];
|
|
232
|
+
base: string | Endpoint["base"];
|
|
233
233
|
response_format: "JSON" | "XML" | "TEXT";
|
|
234
234
|
headers?: Record<string, any>;
|
|
235
235
|
body?: any;
|
|
@@ -243,12 +243,12 @@ export interface EndpointConfig {
|
|
|
243
243
|
*
|
|
244
244
|
* @example
|
|
245
245
|
* ```typescript
|
|
246
|
-
* import {
|
|
246
|
+
* import { variable } from './variable';
|
|
247
247
|
*
|
|
248
248
|
* builder.addNode("health", Endpoint({
|
|
249
249
|
* method: GET,
|
|
250
250
|
* path: "/health",
|
|
251
|
-
* base:
|
|
251
|
+
* base: variable("api-gateway"),
|
|
252
252
|
* response_format: JSON
|
|
253
253
|
* }));
|
|
254
254
|
* ```
|
|
@@ -16,7 +16,7 @@ import {
|
|
|
16
16
|
Frequency,
|
|
17
17
|
WaitDuration,
|
|
18
18
|
Assert,
|
|
19
|
-
|
|
19
|
+
variable,
|
|
20
20
|
} from "./index";
|
|
21
21
|
|
|
22
22
|
// ============================================================================
|
|
@@ -29,7 +29,7 @@ const healthCheck = createTestBuilder({
|
|
|
29
29
|
})
|
|
30
30
|
.request("health", {
|
|
31
31
|
method: GET,
|
|
32
|
-
base:
|
|
32
|
+
base: variable("api-service"),
|
|
33
33
|
response_format: Json,
|
|
34
34
|
path: "/health",
|
|
35
35
|
})
|
|
@@ -55,7 +55,7 @@ const userJourney = createTestBuilder({
|
|
|
55
55
|
})
|
|
56
56
|
.request("create_user", {
|
|
57
57
|
method: POST,
|
|
58
|
-
base:
|
|
58
|
+
base: variable("api-service"),
|
|
59
59
|
response_format: Json,
|
|
60
60
|
path: "/api/v1/users",
|
|
61
61
|
body: {
|
|
@@ -86,7 +86,7 @@ const userJourney = createTestBuilder({
|
|
|
86
86
|
.wait("pause", WaitDuration.seconds(2))
|
|
87
87
|
.request("get_user", {
|
|
88
88
|
method: GET,
|
|
89
|
-
base:
|
|
89
|
+
base: variable("api-service"),
|
|
90
90
|
response_format: Json,
|
|
91
91
|
path: "/api/v1/users/test@example.com",
|
|
92
92
|
})
|
|
@@ -111,7 +111,7 @@ const performanceCheck = createTestBuilder({
|
|
|
111
111
|
})
|
|
112
112
|
.request("api_call", {
|
|
113
113
|
method: GET,
|
|
114
|
-
base:
|
|
114
|
+
base: variable("api-service"),
|
|
115
115
|
response_format: Json,
|
|
116
116
|
path: "/api/v1/metrics",
|
|
117
117
|
})
|
|
@@ -145,7 +145,7 @@ const orderWorkflow = createTestBuilder({
|
|
|
145
145
|
})
|
|
146
146
|
.request("create_order", {
|
|
147
147
|
method: POST,
|
|
148
|
-
base:
|
|
148
|
+
base: variable("api-service"),
|
|
149
149
|
response_format: Json,
|
|
150
150
|
path: "/api/v1/orders",
|
|
151
151
|
body: {
|
|
@@ -161,7 +161,7 @@ const orderWorkflow = createTestBuilder({
|
|
|
161
161
|
])
|
|
162
162
|
.request("confirm_order", {
|
|
163
163
|
method: POST,
|
|
164
|
-
base:
|
|
164
|
+
base: variable("api-service"),
|
|
165
165
|
response_format: Json,
|
|
166
166
|
path: "/api/v1/orders/confirm",
|
|
167
167
|
body: {
|
|
@@ -176,7 +176,7 @@ const orderWorkflow = createTestBuilder({
|
|
|
176
176
|
.wait("processing_time", WaitDuration.seconds(5))
|
|
177
177
|
.request("check_order", {
|
|
178
178
|
method: GET,
|
|
179
|
-
base:
|
|
179
|
+
base: variable("api-service"),
|
|
180
180
|
response_format: Json,
|
|
181
181
|
path: "/api/v1/orders/${create_order.body.order_id}",
|
|
182
182
|
})
|
package/src/example.ts
CHANGED
|
@@ -18,7 +18,7 @@ import {
|
|
|
18
18
|
END,
|
|
19
19
|
Frequency,
|
|
20
20
|
WaitDuration,
|
|
21
|
-
|
|
21
|
+
variable,
|
|
22
22
|
} from "./index";
|
|
23
23
|
|
|
24
24
|
const plan = createGraphBuilder({
|
|
@@ -29,7 +29,7 @@ const plan = createGraphBuilder({
|
|
|
29
29
|
"create_foo",
|
|
30
30
|
Endpoint({
|
|
31
31
|
method: POST,
|
|
32
|
-
base:
|
|
32
|
+
base: variable("api-service"),
|
|
33
33
|
response_format: Json,
|
|
34
34
|
path: "/api/v1/foo",
|
|
35
35
|
}),
|
|
@@ -38,7 +38,7 @@ const plan = createGraphBuilder({
|
|
|
38
38
|
"get_foo",
|
|
39
39
|
Endpoint({
|
|
40
40
|
method: GET,
|
|
41
|
-
base:
|
|
41
|
+
base: variable("api-service"),
|
|
42
42
|
response_format: Json,
|
|
43
43
|
path: "/api/v1/foo",
|
|
44
44
|
}),
|
package/src/index.ts
CHANGED
|
@@ -34,7 +34,8 @@ export type {
|
|
|
34
34
|
|
|
35
35
|
export { Frequency } from "./frequency";
|
|
36
36
|
export { WaitDuration } from "./wait";
|
|
37
|
-
export {
|
|
37
|
+
export { variable, isVariableRef } from "./variable";
|
|
38
|
+
export type { VariableRef } from "./variable";
|
|
38
39
|
export { secret, isSecretRef } from "./secrets";
|
|
39
40
|
export type { SecretRefData, SecretOptions } from "./secrets";
|
|
40
41
|
|
package/src/schema-exports.ts
CHANGED
package/src/schema.ts
CHANGED
|
@@ -72,19 +72,21 @@ export const HttpMethodSchema = Type.Union(
|
|
|
72
72
|
{ $id: "HttpMethod" },
|
|
73
73
|
);
|
|
74
74
|
|
|
75
|
-
export const
|
|
76
|
-
|
|
77
|
-
|
|
75
|
+
export const VariableRefSchema = Type.Object({
|
|
76
|
+
$variable: Type.Object({
|
|
77
|
+
key: Type.String(),
|
|
78
|
+
template: Type.Optional(Type.String()),
|
|
79
|
+
}),
|
|
78
80
|
});
|
|
79
|
-
export type
|
|
81
|
+
export type VariableRef = Static<typeof VariableRefSchema>;
|
|
80
82
|
|
|
81
83
|
export const EndpointSchema = Type.Object(
|
|
82
84
|
{
|
|
83
85
|
id: Type.String(),
|
|
84
86
|
type: Type.Literal(NodeType.ENDPOINT),
|
|
85
87
|
method: HttpMethodSchema,
|
|
86
|
-
path: Type.String(),
|
|
87
|
-
base:
|
|
88
|
+
path: Type.Union([Type.String(), VariableRefSchema]),
|
|
89
|
+
base: Type.Union([Type.String(), VariableRefSchema]),
|
|
88
90
|
headers: Type.Optional(Type.Record(Type.String(), SecretOrStringSchema)),
|
|
89
91
|
body: Type.Optional(Type.Any()), // Body can contain nested SecretRefs
|
|
90
92
|
response_format: ResponseFormatSchema,
|
package/src/type-exports.ts
CHANGED
package/src/variable.ts
ADDED
|
@@ -0,0 +1,121 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Variable reference utilities for griffin DSL.
|
|
3
|
+
*
|
|
4
|
+
* Variables are resolved at evaluation time (when the CLI imports test files)
|
|
5
|
+
* by reading from variables.yaml. The resolved values are baked into the plan.
|
|
6
|
+
*/
|
|
7
|
+
|
|
8
|
+
/**
|
|
9
|
+
* A variable reference that will be resolved at evaluation time.
|
|
10
|
+
*/
|
|
11
|
+
export interface VariableRef {
|
|
12
|
+
$variable: {
|
|
13
|
+
key: string;
|
|
14
|
+
template?: string;
|
|
15
|
+
};
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
/**
|
|
19
|
+
* Create a variable reference that will be resolved from variables.yaml.
|
|
20
|
+
*
|
|
21
|
+
* Variables are resolved when the CLI evaluates the test file, so the final
|
|
22
|
+
* plan contains resolved string values rather than variable references.
|
|
23
|
+
*
|
|
24
|
+
* @param key - The variable key to look up in variables.yaml
|
|
25
|
+
* @returns A variable reference object
|
|
26
|
+
*
|
|
27
|
+
* @example
|
|
28
|
+
* ```typescript
|
|
29
|
+
* // Simple variable reference
|
|
30
|
+
* builder.addNode("check", Endpoint({
|
|
31
|
+
* method: GET,
|
|
32
|
+
* path: "/health",
|
|
33
|
+
* base: variable("api-service"),
|
|
34
|
+
* response_format: JSON
|
|
35
|
+
* }));
|
|
36
|
+
* ```
|
|
37
|
+
*/
|
|
38
|
+
export function variable(key: string): VariableRef;
|
|
39
|
+
|
|
40
|
+
/**
|
|
41
|
+
* Create a variable reference with a template for string interpolation.
|
|
42
|
+
*
|
|
43
|
+
* The template uses ${key} syntax where 'key' is the variable name.
|
|
44
|
+
*
|
|
45
|
+
* @param key - The variable key to look up in variables.yaml
|
|
46
|
+
* @param template - Template string with ${key} placeholders
|
|
47
|
+
* @returns A variable reference object
|
|
48
|
+
*
|
|
49
|
+
* @example
|
|
50
|
+
* ```typescript
|
|
51
|
+
* // Template interpolation
|
|
52
|
+
* builder.addNode("versioned", Endpoint({
|
|
53
|
+
* method: GET,
|
|
54
|
+
* path: variable("api-version", "/api/${api-version}/health"),
|
|
55
|
+
* base: variable("api-service"),
|
|
56
|
+
* response_format: JSON
|
|
57
|
+
* }));
|
|
58
|
+
* ```
|
|
59
|
+
*/
|
|
60
|
+
export function variable(key: string, template: string): VariableRef;
|
|
61
|
+
|
|
62
|
+
export function variable(key: string, template?: string): VariableRef {
|
|
63
|
+
if (!key || typeof key !== "string") {
|
|
64
|
+
throw new Error(`Variable key must be a non-empty string. Got: ${key}`);
|
|
65
|
+
}
|
|
66
|
+
|
|
67
|
+
if (key.trim() === "") {
|
|
68
|
+
throw new Error("Variable key cannot be empty or whitespace only");
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
if (template !== undefined) {
|
|
72
|
+
if (typeof template !== "string") {
|
|
73
|
+
throw new Error(
|
|
74
|
+
`Variable template must be a string. Got: ${typeof template}`,
|
|
75
|
+
);
|
|
76
|
+
}
|
|
77
|
+
|
|
78
|
+
if (template.trim() === "") {
|
|
79
|
+
throw new Error("Variable template cannot be empty or whitespace only");
|
|
80
|
+
}
|
|
81
|
+
|
|
82
|
+
// Validate that template contains the variable key
|
|
83
|
+
const placeholder = `\${${key}}`;
|
|
84
|
+
if (!template.includes(placeholder)) {
|
|
85
|
+
throw new Error(
|
|
86
|
+
`Variable template must contain \${${key}} placeholder. Got: ${template}`,
|
|
87
|
+
);
|
|
88
|
+
}
|
|
89
|
+
}
|
|
90
|
+
|
|
91
|
+
return {
|
|
92
|
+
$variable: {
|
|
93
|
+
key: key.trim(),
|
|
94
|
+
...(template && { template }),
|
|
95
|
+
},
|
|
96
|
+
};
|
|
97
|
+
}
|
|
98
|
+
|
|
99
|
+
/**
|
|
100
|
+
* Type guard to check if a value is a variable reference.
|
|
101
|
+
*/
|
|
102
|
+
export function isVariableRef(value: unknown): value is VariableRef {
|
|
103
|
+
if (typeof value !== "object" || value === null) {
|
|
104
|
+
return false;
|
|
105
|
+
}
|
|
106
|
+
|
|
107
|
+
const obj = value as Record<string, unknown>;
|
|
108
|
+
if (
|
|
109
|
+
!("$variable" in obj) ||
|
|
110
|
+
typeof obj.$variable !== "object" ||
|
|
111
|
+
obj.$variable === null
|
|
112
|
+
) {
|
|
113
|
+
return false;
|
|
114
|
+
}
|
|
115
|
+
|
|
116
|
+
const varData = obj.$variable as Record<string, unknown>;
|
|
117
|
+
return (
|
|
118
|
+
typeof varData.key === "string" &&
|
|
119
|
+
(varData.template === undefined || typeof varData.template === "string")
|
|
120
|
+
);
|
|
121
|
+
}
|
package/src/target.ts
DELETED
|
@@ -1,55 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Target reference utilities for griffin DSL.
|
|
3
|
-
*
|
|
4
|
-
* Targets are resolved at runtime by the runner based on the execution environment.
|
|
5
|
-
* This allows the same test to run against different environments (staging, production, etc.)
|
|
6
|
-
* without changing the test code.
|
|
7
|
-
*/
|
|
8
|
-
|
|
9
|
-
import { TargetRef } from "./schema.js";
|
|
10
|
-
|
|
11
|
-
/**
|
|
12
|
-
* Create a target reference for endpoint base URLs.
|
|
13
|
-
*
|
|
14
|
-
* The runner will resolve this to the appropriate base URL based on the
|
|
15
|
-
* execution environment (passed as a per-run parameter).
|
|
16
|
-
*
|
|
17
|
-
* @param key - The target identifier (e.g., "billing-service", "api-gateway")
|
|
18
|
-
* @returns A target reference object
|
|
19
|
-
*
|
|
20
|
-
* @example
|
|
21
|
-
* ```typescript
|
|
22
|
-
* builder.addNode("billing", Endpoint({
|
|
23
|
-
* method: GET,
|
|
24
|
-
* path: "/invoices",
|
|
25
|
-
* base: target("billing-service"),
|
|
26
|
-
* response_format: JSON
|
|
27
|
-
* }));
|
|
28
|
-
* ```
|
|
29
|
-
*/
|
|
30
|
-
export function target(key: string): TargetRef {
|
|
31
|
-
if (!key || typeof key !== "string") {
|
|
32
|
-
throw new Error(`Target key must be a non-empty string. Got: ${key}`);
|
|
33
|
-
}
|
|
34
|
-
|
|
35
|
-
if (key.trim() === "") {
|
|
36
|
-
throw new Error("Target key cannot be empty or whitespace only");
|
|
37
|
-
}
|
|
38
|
-
|
|
39
|
-
return {
|
|
40
|
-
type: "target",
|
|
41
|
-
key: key.trim(),
|
|
42
|
-
};
|
|
43
|
-
}
|
|
44
|
-
|
|
45
|
-
/**
|
|
46
|
-
* Type guard to check if a value is a target reference.
|
|
47
|
-
*/
|
|
48
|
-
export function isTargetRef(value: unknown): value is TargetRef {
|
|
49
|
-
if (typeof value !== "object" || value === null) {
|
|
50
|
-
return false;
|
|
51
|
-
}
|
|
52
|
-
|
|
53
|
-
const obj = value as Record<string, unknown>;
|
|
54
|
-
return obj.type === "target" && typeof obj.key === "string";
|
|
55
|
-
}
|