Files
openclaw/test/openclaw-npm-postpublish-verify.test.ts
2026-03-23 21:04:08 -07:00

53 lines
2.0 KiB
TypeScript

import { describe, expect, it } from "vitest";
import {
buildPublishedInstallScenarios,
collectInstalledPackageErrors,
} from "../scripts/openclaw-npm-postpublish-verify.ts";
describe("buildPublishedInstallScenarios", () => {
it("uses a single fresh scenario for plain stable releases", () => {
expect(buildPublishedInstallScenarios("2026.3.23")).toEqual([
{
name: "fresh-exact",
installSpecs: ["openclaw@2026.3.23"],
expectedVersion: "2026.3.23",
},
]);
});
it("adds a stable-to-correction upgrade scenario for correction releases", () => {
expect(buildPublishedInstallScenarios("2026.3.23-2")).toEqual([
{
name: "fresh-exact",
installSpecs: ["openclaw@2026.3.23-2"],
expectedVersion: "2026.3.23-2",
},
{
name: "upgrade-from-base-stable",
installSpecs: ["openclaw@2026.3.23", "openclaw@2026.3.23-2"],
expectedVersion: "2026.3.23-2",
},
]);
});
});
describe("collectInstalledPackageErrors", () => {
it("flags version mismatches and missing runtime sidecars", () => {
expect(
collectInstalledPackageErrors({
expectedVersion: "2026.3.23-2",
installedVersion: "2026.3.23",
packageRoot: "/tmp/empty-openclaw",
}),
).toEqual([
"installed package version mismatch: expected 2026.3.23-2, found 2026.3.23.",
"installed package is missing required bundled runtime sidecar: dist/extensions/whatsapp/light-runtime-api.js",
"installed package is missing required bundled runtime sidecar: dist/extensions/whatsapp/runtime-api.js",
"installed package is missing required bundled runtime sidecar: dist/extensions/matrix/helper-api.js",
"installed package is missing required bundled runtime sidecar: dist/extensions/matrix/runtime-api.js",
"installed package is missing required bundled runtime sidecar: dist/extensions/matrix/thread-bindings-runtime.js",
"installed package is missing required bundled runtime sidecar: dist/extensions/msteams/runtime-api.js",
]);
});
});