Add tests for parseRemoteFileAddress

This commit is contained in:
Michael B. Gale
2026-06-23 17:14:06 +01:00
parent c7a94c979d
commit 85c8a8cebe

View File

@@ -0,0 +1,36 @@
import test from "ava";
import { ConfigurationError } from "../util";
import { parseRemoteFileAddress, RemoteFileAddress } from "./remote-file";
test("expandConfigFileInput accepts full remote addresses", async (t) => {
t.deepEqual(parseRemoteFileAddress("owner/repo/path@ref"), {
owner: "owner",
repo: "repo",
path: "path",
ref: "ref",
} satisfies RemoteFileAddress);
t.deepEqual(
parseRemoteFileAddress("owner/repo/path/to/codeql.yml@ref/feature"),
{
owner: "owner",
repo: "repo",
path: "path/to/codeql.yml",
ref: "ref/feature",
} satisfies RemoteFileAddress,
);
});
test("expandConfigFileInput rejects invalid values", async (t) => {
t.throws(() => parseRemoteFileAddress(" "), {
instanceOf: ConfigurationError,
});
t.throws(() => parseRemoteFileAddress("repo:/absolute"), {
instanceOf: ConfigurationError,
});
t.throws(() => parseRemoteFileAddress("repo:file.yml:unexpected"), {
instanceOf: ConfigurationError,
});
});