@loke/http-rpc 5.1.0-beta.6 → 5.1.0-beta.7
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/schema.js +2 -2
- package/dist/schema.js.map +1 -1
- package/dist/test/schema.js +36 -13
- package/dist/test/schema.js.map +1 -1
- package/package.json +1 -1
package/dist/schema.js
CHANGED
|
@@ -20,7 +20,7 @@ class ValidationError extends Error {
|
|
|
20
20
|
class ResponseValidationError extends Error {
|
|
21
21
|
constructor(message, params) {
|
|
22
22
|
super(message);
|
|
23
|
-
this.code = "validation";
|
|
23
|
+
this.code = "response-validation";
|
|
24
24
|
this.type = "https://errors.loke.global/@loke/http-rpc/response-validation";
|
|
25
25
|
Object.defineProperty(this, "message", {
|
|
26
26
|
enumerable: true,
|
|
@@ -83,7 +83,7 @@ function serviceWithSchema(service, serviceMeta) {
|
|
|
83
83
|
if (!responseSchema(result)) {
|
|
84
84
|
const errors = responseSchema.errors;
|
|
85
85
|
if (strictResponseValidation) {
|
|
86
|
-
const errors =
|
|
86
|
+
const errors = responseSchema.errors;
|
|
87
87
|
let msg = "response schema validation error";
|
|
88
88
|
const params = {};
|
|
89
89
|
if (Array.isArray(errors)) {
|
package/dist/schema.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schema.js","sourceRoot":"","sources":["../schema.ts"],"names":[],"mappings":";;;;;;AAAA,uDAIsB;AAQtB,MAAM,eAAgB,SAAQ,KAAK;IAMjC,YAAY,OAAe,EAAE,MAA6B;QACxD,KAAK,CAAC,OAAO,CAAC,CAAC;QAEf,IAAI,CAAC,IAAI,GAAG,YAAY,CAAC;QACzB,IAAI,CAAC,IAAI,GAAG,sDAAsD,CAAC;QACnE,MAAM,CAAC,cAAc,CAAC,IAAI,EAAE,SAAS,EAAE;YACrC,UAAU,EAAE,IAAI;YAChB,KAAK,EAAE,OAAO;SACf,CAAC,CAAC;QAEH,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IAC9B,CAAC;CACF;AAED,MAAM,uBAAwB,SAAQ,KAAK;IAMzC,YAAY,OAAe,EAAE,MAA6B;QACxD,KAAK,CAAC,OAAO,CAAC,CAAC;QAEf,IAAI,CAAC,IAAI,GAAG,
|
|
1
|
+
{"version":3,"file":"schema.js","sourceRoot":"","sources":["../schema.ts"],"names":[],"mappings":"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"}
|
package/dist/test/schema.js
CHANGED
|
@@ -39,7 +39,10 @@ function createServerAddress(app) {
|
|
|
39
39
|
async baz(x) {
|
|
40
40
|
return `success ${x.msg}`;
|
|
41
41
|
}
|
|
42
|
-
async
|
|
42
|
+
async badResponse() {
|
|
43
|
+
return { username: 123 };
|
|
44
|
+
}
|
|
45
|
+
async refReq() {
|
|
43
46
|
throw new Error("for types only");
|
|
44
47
|
}
|
|
45
48
|
async noSchema() {
|
|
@@ -104,6 +107,9 @@ function createServerAddress(app) {
|
|
|
104
107
|
},
|
|
105
108
|
responseTypeDef: { type: "string" },
|
|
106
109
|
},
|
|
110
|
+
badResponse: {
|
|
111
|
+
responseTypeDef: { ref: "User" },
|
|
112
|
+
},
|
|
107
113
|
refReq: {
|
|
108
114
|
requestTypeDef: { ref: "User" },
|
|
109
115
|
responseTypeDef: { ref: "User" },
|
|
@@ -127,18 +133,35 @@ function createServerAddress(app) {
|
|
|
127
133
|
})
|
|
128
134
|
.json();
|
|
129
135
|
// Methods with invalid requests should fail
|
|
130
|
-
|
|
131
|
-
.
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
136
|
+
{
|
|
137
|
+
const err = await t.throwsAsync(() => got_1.default
|
|
138
|
+
.post(`${serverAddress}/rpc/service1/bar`, {
|
|
139
|
+
json: { message: "c", user: { name: 1 } },
|
|
140
|
+
})
|
|
141
|
+
.json());
|
|
142
|
+
t.deepEqual(JSON.parse(err.response.body), {
|
|
143
|
+
message: "user.name must be string",
|
|
144
|
+
code: "validation",
|
|
145
|
+
type: "https://errors.loke.global/@loke/http-rpc/validation",
|
|
146
|
+
instancePath: "/user/name",
|
|
147
|
+
schemaPath: "/definitions/User/properties/name/type",
|
|
148
|
+
});
|
|
149
|
+
}
|
|
150
|
+
// Methods with invalid response should fail (can be turned off)
|
|
151
|
+
{
|
|
152
|
+
const err = await t.throwsAsync(() => got_1.default
|
|
153
|
+
.post(`${serverAddress}/rpc/service2/badResponse`, {
|
|
154
|
+
json: {},
|
|
155
|
+
})
|
|
156
|
+
.json());
|
|
157
|
+
t.deepEqual(JSON.parse(err.response.body), {
|
|
158
|
+
message: "must have property 'name'",
|
|
159
|
+
code: "response-validation",
|
|
160
|
+
type: "https://errors.loke.global/@loke/http-rpc/response-validation",
|
|
161
|
+
instancePath: "",
|
|
162
|
+
schemaPath: "/definitions/User/properties/name",
|
|
163
|
+
});
|
|
164
|
+
}
|
|
142
165
|
// Unlisted methods should fail
|
|
143
166
|
await t.throwsAsync(() => got_1.default
|
|
144
167
|
.post(`${serverAddress}/rpc/service2/unlisted`, {
|
package/dist/test/schema.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schema.js","sourceRoot":"","sources":["../../test/schema.ts"],"names":[],"mappings":";;;;;AAAA,8CAAuB;AACvB,gDAAwB;AACxB,sDAA2C;AAC3C,8DAAqC;AACrC,8CAAqC;AACrC,2BAA+D;AAC/D,sCAA8C;AAE9C,8DAA8D;AAC9D,MAAM,OAAO,GAAG,CAAC,GAAQ,EAAE,GAAQ,EAAE,IAAgB,EAAE,EAAE;IACvD,IAAI,EAAE,CAAC;AACT,CAAC,CAAC;AAEF,SAAS,mBAAmB,CAAC,GAAY;IACvC,MAAM,MAAM,GAAG,cAAI,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC;IAEtC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;IAEjB,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,EAAE,CAAC;IACjC,IAAI,CAAC,OAAO,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE;QAC3C,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;KAC5C;IAED,OAAO,oBAAoB,OAAO,CAAC,IAAI,EAAE,CAAC;AAC5C,CAAC;AAED,IAAA,aAAI,EAAC,yBAAyB,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE;IAC1C,MAAM,GAAG,GAAG,IAAA,iBAAO,GAAE,CAAC;IAEtB,MAAM,cAAc,GAAG;QACrB,GAAG,EAAE,CAAC,CAAkB,EAAE,EAAE;YAC1B,OAAO,WAAW,CAAC,CAAC,GAAG,EAAE,CAAC;QAC5B,CAAC;KACF,CAAC;IAEF,MAAM,QAAQ,GAAG;QACf,GAAG,EAAE,KAAK,EAAE,CAA8C,EAAE,EAAE;YAC5D,OAAO,CAAC,CAAC,IAAI,CAAC;QAChB,CAAC;KACF,CAAC;IAEF,MAAM,WAAW;QACf,KAAK,CAAC,GAAG,CAAC,CAA+B;YACvC,OAAO,WAAW,CAAC,CAAC,GAAG,EAAE,CAAC;QAC5B,CAAC;QACD,KAAK,CAAC,
|
|
1
|
+
{"version":3,"file":"schema.js","sourceRoot":"","sources":["../../test/schema.ts"],"names":[],"mappings":"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"}
|