feat: add support of objects in query params #1075
Open
Annotations
10 errors
|
tests/extended.test.ts#L45
Error: Snapshot `extended > 'link-example' 1` mismatched
- Expected
+ Received
@@ -240,22 +240,28 @@
protected addQueryParam(query: QueryParamsType, key: string) {
return this.encodeQueryParam(key, query[key]);
}
protected addArrayQueryParam(query: QueryParamsType, key: string) {
- const value = query[key];
- return value.map((v: any) => this.encodeQueryParam(key, v)).join("&");
+ const value = Array.isArray(query[key])
+ ? query[key].map((value, index) => [index, value])
+ : Object.entries(query[key]);
+ return value
+ .map(([arrayKey, value]: any) =>
+ this.encodeQueryParam(`${key}[${arrayKey}]`, value),
+ )
+ .join("&");
}
protected toQueryString(rawQuery?: QueryParamsType): string {
const query = rawQuery || {};
const keys = Object.keys(query).filter(
(key) => "undefined" !== typeof query[key],
);
return keys
.map((key) =>
- Array.isArray(query[key])
+ typeof query[key] === "object" || Array.isArray(query[key])
? this.addArrayQueryParam(query, key)
: this.addQueryParam(query, key),
)
.join("&");
}
❯ tests/extended.test.ts:45:21
|
|
tests/extended.test.ts#L45
Error: Snapshot `extended > 'full-swagger-scheme' 1` mismatched
- Expected
+ Received
@@ -35352,22 +35352,28 @@
protected addQueryParam(query: QueryParamsType, key: string) {
return this.encodeQueryParam(key, query[key]);
}
protected addArrayQueryParam(query: QueryParamsType, key: string) {
- const value = query[key];
- return value.map((v: any) => this.encodeQueryParam(key, v)).join("&");
+ const value = Array.isArray(query[key])
+ ? query[key].map((value, index) => [index, value])
+ : Object.entries(query[key]);
+ return value
+ .map(([arrayKey, value]: any) =>
+ this.encodeQueryParam(`${key}[${arrayKey}]`, value),
+ )
+ .join("&");
}
protected toQueryString(rawQuery?: QueryParamsType): string {
const query = rawQuery || {};
const keys = Object.keys(query).filter(
(key) => "undefined" !== typeof query[key],
);
return keys
.map((key) =>
- Array.isArray(query[key])
+ typeof query[key] === "object" || Array.isArray(query[key])
? this.addArrayQueryParam(query, key)
: this.addQueryParam(query, key),
)
.join("&");
}
❯ tests/extended.test.ts:45:21
|
|
tests/extended.test.ts#L45
Error: Snapshot `extended > 'explode-param-3' 1` mismatched
- Expected
+ Received
@@ -159,22 +159,28 @@
protected addQueryParam(query: QueryParamsType, key: string) {
return this.encodeQueryParam(key, query[key]);
}
protected addArrayQueryParam(query: QueryParamsType, key: string) {
- const value = query[key];
- return value.map((v: any) => this.encodeQueryParam(key, v)).join("&");
+ const value = Array.isArray(query[key])
+ ? query[key].map((value, index) => [index, value])
+ : Object.entries(query[key]);
+ return value
+ .map(([arrayKey, value]: any) =>
+ this.encodeQueryParam(`${key}[${arrayKey}]`, value),
+ )
+ .join("&");
}
protected toQueryString(rawQuery?: QueryParamsType): string {
const query = rawQuery || {};
const keys = Object.keys(query).filter(
(key) => "undefined" !== typeof query[key],
);
return keys
.map((key) =>
- Array.isArray(query[key])
+ typeof query[key] === "object" || Array.isArray(query[key])
? this.addArrayQueryParam(query, key)
: this.addQueryParam(query, key),
)
.join("&");
}
❯ tests/extended.test.ts:45:21
|
|
tests/extended.test.ts#L45
Error: Snapshot `extended > 'components-responses' 1` mismatched
- Expected
+ Received
@@ -115,22 +115,28 @@
protected addQueryParam(query: QueryParamsType, key: string) {
return this.encodeQueryParam(key, query[key]);
}
protected addArrayQueryParam(query: QueryParamsType, key: string) {
- const value = query[key];
- return value.map((v: any) => this.encodeQueryParam(key, v)).join("&");
+ const value = Array.isArray(query[key])
+ ? query[key].map((value, index) => [index, value])
+ : Object.entries(query[key]);
+ return value
+ .map(([arrayKey, value]: any) =>
+ this.encodeQueryParam(`${key}[${arrayKey}]`, value),
+ )
+ .join("&");
}
protected toQueryString(rawQuery?: QueryParamsType): string {
const query = rawQuery || {};
const keys = Object.keys(query).filter(
(key) => "undefined" !== typeof query[key],
);
return keys
.map((key) =>
- Array.isArray(query[key])
+ typeof query[key] === "object" || Array.isArray(query[key])
? this.addArrayQueryParam(query, key)
: this.addQueryParam(query, key),
)
.join("&");
}
❯ tests/extended.test.ts:45:21
|
|
tests/extended.test.ts#L45
Error: Snapshot `extended > 'callback-example' 1` mismatched
- Expected
+ Received
@@ -135,22 +135,28 @@
protected addQueryParam(query: QueryParamsType, key: string) {
return this.encodeQueryParam(key, query[key]);
}
protected addArrayQueryParam(query: QueryParamsType, key: string) {
- const value = query[key];
- return value.map((v: any) => this.encodeQueryParam(key, v)).join("&");
+ const value = Array.isArray(query[key])
+ ? query[key].map((value, index) => [index, value])
+ : Object.entries(query[key]);
+ return value
+ .map(([arrayKey, value]: any) =>
+ this.encodeQueryParam(`${key}[${arrayKey}]`, value),
+ )
+ .join("&");
}
protected toQueryString(rawQuery?: QueryParamsType): string {
const query = rawQuery || {};
const keys = Object.keys(query).filter(
(key) => "undefined" !== typeof query[key],
);
return keys
.map((key) =>
- Array.isArray(query[key])
+ typeof query[key] === "object" || Array.isArray(query[key])
? this.addArrayQueryParam(query, key)
: this.addQueryParam(query, key),
)
.join("&");
}
❯ tests/extended.test.ts:45:21
|
|
tests/extended.test.ts#L45
Error: Snapshot `extended > 'api-with-examples' 1` mismatched
- Expected
+ Received
@@ -113,22 +113,28 @@
protected addQueryParam(query: QueryParamsType, key: string) {
return this.encodeQueryParam(key, query[key]);
}
protected addArrayQueryParam(query: QueryParamsType, key: string) {
- const value = query[key];
- return value.map((v: any) => this.encodeQueryParam(key, v)).join("&");
+ const value = Array.isArray(query[key])
+ ? query[key].map((value, index) => [index, value])
+ : Object.entries(query[key]);
+ return value
+ .map(([arrayKey, value]: any) =>
+ this.encodeQueryParam(`${key}[${arrayKey}]`, value),
+ )
+ .join("&");
}
protected toQueryString(rawQuery?: QueryParamsType): string {
const query = rawQuery || {};
const keys = Object.keys(query).filter(
(key) => "undefined" !== typeof query[key],
);
return keys
.map((key) =>
- Array.isArray(query[key])
+ typeof query[key] === "object" || Array.isArray(query[key])
? this.addArrayQueryParam(query, key)
: this.addQueryParam(query, key),
)
.join("&");
}
❯ tests/extended.test.ts:45:21
|
|
tests/extended.test.ts#L45
Error: Snapshot `extended > 'anyof-example' 1` mismatched
- Expected
+ Received
@@ -127,22 +127,28 @@
protected addQueryParam(query: QueryParamsType, key: string) {
return this.encodeQueryParam(key, query[key]);
}
protected addArrayQueryParam(query: QueryParamsType, key: string) {
- const value = query[key];
- return value.map((v: any) => this.encodeQueryParam(key, v)).join("&");
+ const value = Array.isArray(query[key])
+ ? query[key].map((value, index) => [index, value])
+ : Object.entries(query[key]);
+ return value
+ .map(([arrayKey, value]: any) =>
+ this.encodeQueryParam(`${key}[${arrayKey}]`, value),
+ )
+ .join("&");
}
protected toQueryString(rawQuery?: QueryParamsType): string {
const query = rawQuery || {};
const keys = Object.keys(query).filter(
(key) => "undefined" !== typeof query[key],
);
return keys
.map((key) =>
- Array.isArray(query[key])
+ typeof query[key] === "object" || Array.isArray(query[key])
? this.addArrayQueryParam(query, key)
: this.addQueryParam(query, key),
)
.join("&");
}
❯ tests/extended.test.ts:45:21
|
|
tests/extended.test.ts#L45
Error: Snapshot `extended > 'allof-example' 1` mismatched
- Expected
+ Received
@@ -133,22 +133,28 @@
protected addQueryParam(query: QueryParamsType, key: string) {
return this.encodeQueryParam(key, query[key]);
}
protected addArrayQueryParam(query: QueryParamsType, key: string) {
- const value = query[key];
- return value.map((v: any) => this.encodeQueryParam(key, v)).join("&");
+ const value = Array.isArray(query[key])
+ ? query[key].map((value, index) => [index, value])
+ : Object.entries(query[key]);
+ return value
+ .map(([arrayKey, value]: any) =>
+ this.encodeQueryParam(`${key}[${arrayKey}]`, value),
+ )
+ .join("&");
}
protected toQueryString(rawQuery?: QueryParamsType): string {
const query = rawQuery || {};
const keys = Object.keys(query).filter(
(key) => "undefined" !== typeof query[key],
);
return keys
.map((key) =>
- Array.isArray(query[key])
+ typeof query[key] === "object" || Array.isArray(query[key])
? this.addArrayQueryParam(query, key)
: this.addQueryParam(query, key),
)
.join("&");
}
❯ tests/extended.test.ts:45:21
|
|
tests/extended.test.ts#L45
Error: Snapshot `extended > 'additional-properties2' 1` mismatched
- Expected
+ Received
@@ -97,22 +97,28 @@
protected addQueryParam(query: QueryParamsType, key: string) {
return this.encodeQueryParam(key, query[key]);
}
protected addArrayQueryParam(query: QueryParamsType, key: string) {
- const value = query[key];
- return value.map((v: any) => this.encodeQueryParam(key, v)).join("&");
+ const value = Array.isArray(query[key])
+ ? query[key].map((value, index) => [index, value])
+ : Object.entries(query[key]);
+ return value
+ .map(([arrayKey, value]: any) =>
+ this.encodeQueryParam(`${key}[${arrayKey}]`, value),
+ )
+ .join("&");
}
protected toQueryString(rawQuery?: QueryParamsType): string {
const query = rawQuery || {};
const keys = Object.keys(query).filter(
(key) => "undefined" !== typeof query[key],
);
return keys
.map((key) =>
- Array.isArray(query[key])
+ typeof query[key] === "object" || Array.isArray(query[key])
? this.addArrayQueryParam(query, key)
: this.addQueryParam(query, key),
)
.join("&");
}
❯ tests/extended.test.ts:45:21
|
|
tests/extended.test.ts#L45
Error: Snapshot `extended > 'additional-properties' 1` mismatched
- Expected
+ Received
@@ -100,22 +100,28 @@
protected addQueryParam(query: QueryParamsType, key: string) {
return this.encodeQueryParam(key, query[key]);
}
protected addArrayQueryParam(query: QueryParamsType, key: string) {
- const value = query[key];
- return value.map((v: any) => this.encodeQueryParam(key, v)).join("&");
+ const value = Array.isArray(query[key])
+ ? query[key].map((value, index) => [index, value])
+ : Object.entries(query[key]);
+ return value
+ .map(([arrayKey, value]: any) =>
+ this.encodeQueryParam(`${key}[${arrayKey}]`, value),
+ )
+ .join("&");
}
protected toQueryString(rawQuery?: QueryParamsType): string {
const query = rawQuery || {};
const keys = Object.keys(query).filter(
(key) => "undefined" !== typeof query[key],
);
return keys
.map((key) =>
- Array.isArray(query[key])
+ typeof query[key] === "object" || Array.isArray(query[key])
? this.addArrayQueryParam(query, key)
: this.addQueryParam(query, key),
)
.join("&");
}
❯ tests/extended.test.ts:45:21
|
The logs for this run have expired and are no longer available.
Loading