mirror of
https://github.com/openclaw/openclaw.git
synced 2026-07-20 01:11:36 +00:00
* test(infra): add unit tests for SQLite user_version pragma helper * ci: trigger re-review
48 lines
1.3 KiB
TypeScript
48 lines
1.3 KiB
TypeScript
// Tests for SQLite user_version pragma helper.
|
|
import { describe, expect, it } from "vitest";
|
|
import { readSqliteUserVersion } from "./sqlite-user-version.js";
|
|
|
|
describe("readSqliteUserVersion", () => {
|
|
it("returns 0 when row is undefined", () => {
|
|
const db = {
|
|
prepare: () => ({ get: () => undefined }),
|
|
} as any;
|
|
expect(readSqliteUserVersion(db)).toBe(0);
|
|
});
|
|
|
|
it("returns 0 when user_version is null", () => {
|
|
const db = {
|
|
prepare: () => ({ get: () => ({ user_version: null }) }),
|
|
} as any;
|
|
expect(readSqliteUserVersion(db)).toBe(0);
|
|
});
|
|
|
|
it("returns numeric user_version", () => {
|
|
const db = {
|
|
prepare: () => ({ get: () => ({ user_version: 5 }) }),
|
|
} as any;
|
|
expect(readSqliteUserVersion(db)).toBe(5);
|
|
});
|
|
|
|
it("returns 0 when user_version is 0", () => {
|
|
const db = {
|
|
prepare: () => ({ get: () => ({ user_version: 0 }) }),
|
|
} as any;
|
|
expect(readSqliteUserVersion(db)).toBe(0);
|
|
});
|
|
|
|
it("converts string user_version to number", () => {
|
|
const db = {
|
|
prepare: () => ({ get: () => ({ user_version: "3" }) }),
|
|
} as any;
|
|
expect(readSqliteUserVersion(db)).toBe(3);
|
|
});
|
|
|
|
it("returns 0 for empty object", () => {
|
|
const db = {
|
|
prepare: () => ({ get: () => ({}) }),
|
|
} as any;
|
|
expect(readSqliteUserVersion(db)).toBe(0);
|
|
});
|
|
});
|