core: update database path test to verify correct channel-based filename

The test now validates that the database file is named according to the current installation channel (latest/beta get 'opencode.db', others get sanitized names). This ensures users' data is stored in the correct location based on their update channel.
This commit is contained in:
Dax Raad 2026-03-07 18:52:35 -05:00
parent 2230c3c401
commit 523f792b48

View File

@ -1,12 +1,14 @@
import { describe, expect, test } from "bun:test"
import path from "path"
import { Installation } from "../../src/installation"
import { Database } from "../../src/storage/db"
describe("Database.file", () => {
test("uses the shared database for latest", () => {
expect(Database.file("latest")).toBe("opencode.db")
})
test("sanitizes preview channels for filenames", () => {
expect(Database.file("fix/windows-modified-files-tracking")).toBe("opencode-fix-windows-modified-files-tracking.db")
describe("Database.Path", () => {
test("returns database path for the current channel", () => {
const file = path.basename(Database.Path)
const expected = ["latest", "beta"].includes(Installation.CHANNEL)
? "opencode.db"
: `opencode-${Installation.CHANNEL.replace(/[^a-zA-Z0-9._-]/g, "-")}.db`
expect(file).toBe(expected)
})
})