mirror of
https://github.com/Sea-Haven-Industries/shoc-frontend-new.git
synced 2026-09-30 08:03:13 +00:00
26 lines
962 B
TypeScript
26 lines
962 B
TypeScript
import { describe, expect, it } from "vitest";
|
|
|
|
import { LOCAL_DEVELOPMENT_RELEASE, resolveSentryRelease } from "./sentry-release";
|
|
|
|
describe("resolveSentryRelease", () => {
|
|
it("maps the exact commit to the frontend release", () => {
|
|
const sha = "ABCDEF0123456789ABCDEF0123456789ABCDEF01";
|
|
|
|
expect(resolveSentryRelease(sha, true)).toEqual({
|
|
commitSha: sha.toLowerCase(),
|
|
release: `shoc-frontend@${sha.toLowerCase()}`,
|
|
});
|
|
});
|
|
|
|
it("fails CI when the commit identity is missing or malformed", () => {
|
|
expect(() => resolveSentryRelease(undefined, true)).toThrow(/40-character commit SHA/);
|
|
expect(() => resolveSentryRelease("not-a-sha", true)).toThrow(/40-character commit SHA/);
|
|
});
|
|
|
|
it("labels non-CI builds without a commit as local development", () => {
|
|
expect(resolveSentryRelease(undefined, false)).toEqual({
|
|
commitSha: LOCAL_DEVELOPMENT_RELEASE,
|
|
release: LOCAL_DEVELOPMENT_RELEASE,
|
|
});
|
|
});
|
|
});
|