Files
oh-my-opencode/src/hooks/auto-update-checker/constants.test.ts
T
YeonGyu-Kim eb8d7191ff fix(auto-update): align PACKAGE_NAME with published package name (#3129)
Changed PACKAGE_NAME from 'oh-my-openagent' to 'oh-my-opencode' in
auto-update-checker/constants.ts to match package.json. This fixes
getCachedVersion() returning null, causing 'unknown' in version toast.

TDD: red-green confirmed. 39 tests pass, tsc clean.

Closes #3129
2026-04-07 15:11:28 +09:00

30 lines
1.3 KiB
TypeScript

import { describe, expect, it } from "bun:test"
import { readFileSync } from "node:fs"
import { join } from "node:path"
import { fileURLToPath } from "node:url"
import { getOpenCodeCacheDir } from "../../shared/data-path"
describe("auto-update-checker constants", () => {
it("uses the OpenCode cache directory for installed package metadata", async () => {
const { CACHE_DIR, INSTALLED_PACKAGE_JSON, PACKAGE_NAME } = await import(`./constants?test=${Date.now()}`)
expect(CACHE_DIR).toBe(join(getOpenCodeCacheDir(), "packages"))
expect(INSTALLED_PACKAGE_JSON).toBe(
join(getOpenCodeCacheDir(), "packages", "node_modules", PACKAGE_NAME, "package.json")
)
})
it("PACKAGE_NAME matches the published package.json name", async () => {
// given the canonical package.json shipped with the plugin
const here = fileURLToPath(import.meta.url)
const repoPackageJsonPath = join(here, "..", "..", "..", "..", "package.json")
const repoPackageJson = JSON.parse(readFileSync(repoPackageJsonPath, "utf-8")) as { name: string }
// when the auto-update-checker constants are loaded
const { PACKAGE_NAME } = await import(`./constants?test=${Date.now()}`)
// then PACKAGE_NAME equals the actually published package name
expect(PACKAGE_NAME).toBe(repoPackageJson.name)
})
})