Files
new-api-analytics/lib/theme-sync.test.ts

21 lines
951 B
TypeScript

import { describe, expect, test } from "bun:test";
import { resolveIncomingThemeMode, resolveStoredTheme } from "./theme-sync";
describe("theme sync helpers", () => {
test("resolves stored analytics theme values", () => {
expect(resolveStoredTheme("light", true)).toBe("light");
expect(resolveStoredTheme("dark", false)).toBe("dark");
expect(resolveStoredTheme("system", true)).toBe("dark");
expect(resolveStoredTheme("system", false)).toBe("light");
});
test("maps new-api theme messages to analytics themes", () => {
expect(resolveIncomingThemeMode("light", true)).toBe("light");
expect(resolveIncomingThemeMode("dark", false)).toBe("dark");
expect(resolveIncomingThemeMode("auto", true)).toBe("dark");
expect(resolveIncomingThemeMode("auto", false)).toBe("light");
expect(resolveIncomingThemeMode("system", true)).toBe("dark");
expect(resolveIncomingThemeMode("unknown", true)).toBeNull();
});
});