File size: 858 Bytes
7b8fb69 | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 | import { describe, expect, it } from "vitest";
import { DEPLOYMENT_MANIFEST_PATH, deploymentManifestSchema } from "../src/deployment.js";
describe("deployment manifest", () => {
it("accepts one exact Git source revision", () => {
expect(DEPLOYMENT_MANIFEST_PATH).toBe(".xtap-deployment.json");
expect(deploymentManifestSchema.parse({ source_revision: "a".repeat(40) })).toEqual({
source_revision: "a".repeat(40),
});
});
it("rejects missing, malformed, and extended manifests", () => {
expect(deploymentManifestSchema.safeParse({}).success).toBe(false);
expect(deploymentManifestSchema.safeParse({ source_revision: "main" }).success).toBe(false);
expect(
deploymentManifestSchema.safeParse({
source_revision: "a".repeat(40),
secret: "must-not-pass",
}).success,
).toBe(false);
});
});
|