mirror of
https://github.com/mountain-loop/yaak.git
synced 2026-07-05 12:31:47 +02:00
Support string-based url.path in Postman importer. (#490)
This commit is contained in:
@@ -180,8 +180,12 @@ function convertUrl(rawUrl: unknown): Pick<HttpRequest, "url" | "urlParameters">
|
|||||||
v += `:${url.port}`;
|
v += `:${url.port}`;
|
||||||
}
|
}
|
||||||
|
|
||||||
if ("path" in url && Array.isArray(url.path) && url.path.length > 0) {
|
if ("path" in url) {
|
||||||
v += `/${Array.isArray(url.path) ? url.path.join("/") : url.path}`;
|
if (Array.isArray(url.path) && url.path.length > 0) {
|
||||||
|
v += `/${url.path.join("/")}`;
|
||||||
|
} else if (typeof url.path === "string" && url.path.length > 0) {
|
||||||
|
v += `/${url.path.replace(/^\//, "")}`;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
const params: HttpUrlParameter[] = [];
|
const params: HttpUrlParameter[] = [];
|
||||||
|
|||||||
@@ -57,4 +57,34 @@ describe("importer-postman", () => {
|
|||||||
}),
|
}),
|
||||||
]);
|
]);
|
||||||
});
|
});
|
||||||
|
|
||||||
|
test("Imports url.path when it is a string instead of an array", () => {
|
||||||
|
const result = convertPostman(
|
||||||
|
JSON.stringify({
|
||||||
|
info: {
|
||||||
|
name: "String Path Test",
|
||||||
|
schema: "https://schema.getpostman.com/json/collection/v2.1.0/collection.json",
|
||||||
|
},
|
||||||
|
item: [
|
||||||
|
{
|
||||||
|
name: "String Path",
|
||||||
|
request: {
|
||||||
|
method: "GET",
|
||||||
|
url: {
|
||||||
|
host: ["example", "com"],
|
||||||
|
path: "foo/bar",
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
],
|
||||||
|
}),
|
||||||
|
);
|
||||||
|
|
||||||
|
expect(result?.resources.httpRequests).toEqual([
|
||||||
|
expect.objectContaining({
|
||||||
|
name: "String Path",
|
||||||
|
url: "example.com/foo/bar",
|
||||||
|
}),
|
||||||
|
]);
|
||||||
|
});
|
||||||
});
|
});
|
||||||
|
|||||||
Reference in New Issue
Block a user