mirror of
https://github.com/nexu-io/open-design.git
synced 2026-09-20 06:15:06 +08:00
4b48f94b7c
* refactor(ci): align tools-pack sources with scope boundaries * refactor(tools-pack): unify test source imports * fix(tools-pack): resolve workspace root from package Generated-By: looper 0.11.2 (runner=fixer, agent=codex) * test(tools-pack): exercise bundled CLI directly --------- Co-authored-by: Looper <looper@noreply.github.com>
28 lines
1.4 KiB
TypeScript
28 lines
1.4 KiB
TypeScript
import { describe, expect, it } from "vitest";
|
|
|
|
import { electronBuilderVersionForAppVersion, versionCoreForAppVersion, versionFamilyForAppVersion } from "@/versioning/index.js";
|
|
|
|
describe("tools-pack version helpers", () => {
|
|
it("keeps runtime app versions intact for electron-builder", () => {
|
|
expect(electronBuilderVersionForAppVersion("0.8.0")).toBe("0.8.0");
|
|
expect(electronBuilderVersionForAppVersion("0.8.0-beta.6")).toBe("0.8.0-beta.6");
|
|
expect(electronBuilderVersionForAppVersion("0.8.0-preview.1")).toBe("0.8.0-preview.1");
|
|
expect(electronBuilderVersionForAppVersion("0.8.0-prerelease.2")).toBe("0.8.0-prerelease.2");
|
|
});
|
|
|
|
it("collapses prerelease build counters down to the X.Y.Z cache line", () => {
|
|
expect(versionCoreForAppVersion("0.8.0")).toBe("0.8.0");
|
|
expect(versionCoreForAppVersion("0.8.0-beta.6")).toBe("0.8.0");
|
|
expect(versionCoreForAppVersion("0.8.0-preview.1")).toBe("0.8.0");
|
|
expect(versionCoreForAppVersion("0.8.0-prerelease.2")).toBe("0.8.0");
|
|
});
|
|
|
|
it("collapses app versions down to the X.Y cache family", () => {
|
|
expect(versionFamilyForAppVersion("0.9.0")).toBe("0.9");
|
|
expect(versionFamilyForAppVersion("0.9.1-beta.6")).toBe("0.9");
|
|
expect(versionFamilyForAppVersion("0.9.1-preview.1")).toBe("0.9");
|
|
expect(versionFamilyForAppVersion("1.10.2-prerelease.3")).toBe("1.10");
|
|
expect(versionFamilyForAppVersion("not-semver")).toBeNull();
|
|
});
|
|
});
|