mirror of https://github.com/openclaw/openclaw.git
29 lines
1.1 KiB
TypeScript
29 lines
1.1 KiB
TypeScript
import { readFileSync } from "node:fs";
|
|
import { join } from "node:path";
|
|
import { describe, expect, test } from "vitest";
|
|
|
|
function readTerminalCss() {
|
|
// This test is intentionally simple: it guards against regressions where the
|
|
// docs header stops being sticky because sticky elements live inside an
|
|
// overflow-clipped container.
|
|
const path = join(process.cwd(), "docs", "assets", "terminal.css");
|
|
return readFileSync(path, "utf8");
|
|
}
|
|
|
|
describe("docs terminal.css", () => {
|
|
test("keeps the docs header sticky (shell is sticky)", () => {
|
|
const css = readTerminalCss();
|
|
expect(css).toMatch(/\.shell\s*\{[^}]*position:\s*sticky;[^}]*top:\s*0;[^}]*\}/s);
|
|
});
|
|
|
|
test("does not rely on making body overflow visible", () => {
|
|
const css = readTerminalCss();
|
|
expect(css).not.toMatch(/body\s*\{[^}]*overflow-x:\s*visible;[^}]*\}/s);
|
|
});
|
|
|
|
test("does not make the terminal frame overflow visible (can break layout)", () => {
|
|
const css = readTerminalCss();
|
|
expect(css).not.toMatch(/\.shell__frame\s*\{[^}]*overflow:\s*visible;[^}]*\}/s);
|
|
});
|
|
});
|