Make input-validation assertions more granular

This commit is contained in:
Mario Campos
2026-10-29 10:13:06 -05:00
parent 87cac24cdd
commit 5bb3554330
2 changed files with 8 additions and 4 deletions

View File

@@ -64,14 +64,14 @@ describe("parseOptions", async () => {
await it("rejects an empty --marker", () => {
assert.throws(
() => parseOptions(withFlag("--marker", "")),
/Missing required flag --marker/,
/The value for --marker cannot be empty/,
);
});
await it("rejects a whitespace-only --marker", () => {
assert.throws(
() => parseOptions(withFlag("--marker", " \t\n")),
/Missing required flag --marker/,
/The value for --marker cannot be empty/,
);
});
});

View File

@@ -46,12 +46,16 @@ export function parseOptions(argv?: string[]): Options {
strict: true,
});
assert(values.marker?.trim(), "Missing required flag --marker.");
assert(values.marker !== undefined, "Missing required flag --marker.");
assert(
values.marker.trim() !== "",
"The value for --marker cannot be empty.",
);
const [owner, repo] = values.repository!.split("/");
return {
body: values.body!,
marker: values.marker!,
marker: values.marker,
issueId: Number(values["issue-id"]),
repository: { owner, repo },
};