项目文件夹

文件
wehub-resource-sync adf0d17497
publish / version_or_publish (push) Has been cancelled
storybook-build / changes (push) Has been cancelled
storybook-build / :storybook-build (push) Has been cancelled
Sync Gradio Skills to Hugging Face / sync-skills (push) Has been cancelled
functional / changes (push) Has been cancelled
functional / build-frontend (push) Has been cancelled
functional / functional-test-SSR=false (push) Has been cancelled
functional / functional-reload (push) Has been cancelled
js / changes (push) Has been cancelled
js / js-test (push) Has been cancelled
docs-build / changes (push) Has been cancelled
docs-build / docs-build (push) Has been cancelled
docs-build / website-build (push) Has been cancelled
functional / functional-test-SSR=true (push) Has been cancelled
hygiene / hygiene-test (push) Has been cancelled
python / changes (push) Has been cancelled
python / build (push) Has been cancelled
python / test-ubuntu-latest-flaky (push) Has been cancelled
python / test-ubuntu-latest-not-flaky (push) Has been cancelled
python / test-windows-latest-flaky (push) Has been cancelled
python / test-windows-latest-not-flaky (push) Has been cancelled
chore: import upstream snapshot with attribution
2026-07-13 13:17:32 +08:00

30 行
876 B
TypeScript

import { describe, expect, test } from "vitest";
import { sanitize } from "./browser";
describe("sanitize", () => {
test("opens non-fragment links in a new tab", () => {
const node = new DOMParser().parseFromString(
sanitize('<a href="/docs">docs</a>'),
"text/html"
);
const link = node.querySelector("a");
expect(link?.getAttribute("href")).toBe("/docs");
expect(link?.getAttribute("target")).toBe("_blank");
expect(link?.getAttribute("rel")).toBe("noopener noreferrer");
});
test("keeps hash-only links in the same page", () => {
const node = new DOMParser().parseFromString(
sanitize('<a href="#section">section</a>'),
"text/html"
);
const link = node.querySelector("a");
expect(link?.getAttribute("href")).toBe("#section");
expect(link?.getAttribute("target")).toBeNull();
expect(link?.getAttribute("rel")).toBeNull();
});
});