72 lines
2.2 KiB
TypeScript
72 lines
2.2 KiB
TypeScript
import { describe, expect, it } from "bun:test"
|
|
import { ansiToRgba } from "./ansi-to-rgba"
|
|
import { resolveTheme } from "./theme-resolver"
|
|
import type { ThemeJson } from "../types/theme-schema"
|
|
|
|
describe("theme utils", () => {
|
|
it("converts ansi codes", () => {
|
|
const color = ansiToRgba(1)
|
|
expect(color).toBeTruthy()
|
|
})
|
|
|
|
it("resolves simple theme", () => {
|
|
const json: ThemeJson = {
|
|
theme: {
|
|
primary: "#ffffff",
|
|
secondary: "#000000",
|
|
accent: "#000000",
|
|
error: "#000000",
|
|
warning: "#000000",
|
|
success: "#000000",
|
|
info: "#000000",
|
|
text: "#000000",
|
|
textMuted: "#000000",
|
|
background: "#000000",
|
|
backgroundPanel: "#000000",
|
|
backgroundElement: "#000000",
|
|
border: "#000000",
|
|
borderActive: "#000000",
|
|
borderSubtle: "#000000",
|
|
diffAdded: "#000000",
|
|
diffRemoved: "#000000",
|
|
diffContext: "#000000",
|
|
diffHunkHeader: "#000000",
|
|
diffHighlightAdded: "#000000",
|
|
diffHighlightRemoved: "#000000",
|
|
diffAddedBg: "#000000",
|
|
diffRemovedBg: "#000000",
|
|
diffContextBg: "#000000",
|
|
diffLineNumber: "#000000",
|
|
diffAddedLineNumberBg: "#000000",
|
|
diffRemovedLineNumberBg: "#000000",
|
|
markdownText: "#000000",
|
|
markdownHeading: "#000000",
|
|
markdownLink: "#000000",
|
|
markdownLinkText: "#000000",
|
|
markdownCode: "#000000",
|
|
markdownBlockQuote: "#000000",
|
|
markdownEmph: "#000000",
|
|
markdownStrong: "#000000",
|
|
markdownHorizontalRule: "#000000",
|
|
markdownListItem: "#000000",
|
|
markdownListEnumeration: "#000000",
|
|
markdownImage: "#000000",
|
|
markdownImageText: "#000000",
|
|
markdownCodeBlock: "#000000",
|
|
syntaxComment: "#000000",
|
|
syntaxKeyword: "#000000",
|
|
syntaxFunction: "#000000",
|
|
syntaxVariable: "#000000",
|
|
syntaxString: "#000000",
|
|
syntaxNumber: "#000000",
|
|
syntaxType: "#000000",
|
|
syntaxOperator: "#000000",
|
|
syntaxPunctuation: "#000000",
|
|
},
|
|
}
|
|
|
|
const resolved = resolveTheme(json, "dark") as unknown as { primary: unknown }
|
|
expect(resolved.primary).toBeTruthy()
|
|
})
|
|
})
|