This repository has been archived on 2026-08-23. You can view files and clone it. You cannot open issues or pull requests or push a commit.
Files
pi-web/src/server/sessions/plainTextTheme.test.ts
T

29 lines
1.1 KiB
TypeScript

import { Theme } from "@earendil-works/pi-coding-agent";
import { describe, expect, it } from "vitest";
import { plainTextTheme } from "./plainTextTheme.js";
describe("plainTextTheme", () => {
it("preserves Pi Theme compatibility without adding formatting", () => {
const text = "plain extension output";
const formatters: ((value: string) => string)[] = [
(value) => plainTextTheme.fg("accent", value),
(value) => plainTextTheme.bg("selectedBg", value),
(value) => plainTextTheme.bold(value),
(value) => plainTextTheme.italic(value),
(value) => plainTextTheme.underline(value),
(value) => plainTextTheme.inverse(value),
(value) => plainTextTheme.strikethrough(value),
plainTextTheme.getThinkingBorderColor("high"),
plainTextTheme.getBashModeBorderColor(),
];
expect(plainTextTheme).toBeInstanceOf(Theme);
for (const format of formatters) expect(format(text)).toBe(text);
});
it("returns no terminal ANSI prefixes", () => {
expect(plainTextTheme.getFgAnsi("accent")).toBe("");
expect(plainTextTheme.getBgAnsi("selectedBg")).toBe("");
});
});