import { assertEquals } from "../testing/asserts.ts";import * as semver from "./mod.ts";
type PrereleaseParts = [string | number, (number | string)?];
Deno.test("prerelease", function () { const versions: [PrereleaseParts | null, string][] = [ [["alpha", 1], "1.2.2-alpha.1"], [[1], "0.6.1-1"], [["beta", 2], "1.0.0-beta.2"], [["pre"], "v0.5.4-pre"], [["alpha", 1], "1.2.2-alpha.1"], [null, "~2.0.0-alpha.1"], [null, "invalid version"], ];
versions.forEach(function (tuple) { const expected = tuple[0]; const version = tuple[1]; const msg = "prerelease(" + version + ")"; assertEquals( semver.prerelease(version), expected as unknown as string[], msg, ); });});