diff --git a/desktop/src/shared/ui/markdown/ExternalLinkAnchor.test.mjs b/desktop/src/shared/ui/markdown/ExternalLinkAnchor.test.mjs new file mode 100644 index 00000000000..115ae194eb2 --- /dev/null +++ b/desktop/src/shared/ui/markdown/ExternalLinkAnchor.test.mjs @@ -0,0 +1,32 @@ +import assert from "node:assert/strict"; +import test from "node:test"; + +import React from "react"; +import { renderToStaticMarkup } from "react-dom/server"; + +import { TooltipProvider } from "../tooltip.tsx"; +import { ExternalLinkAnchor } from "./ExternalLinkAnchor.tsx"; + +test("external markdown links rest without an underline", () => { + const html = renderToStaticMarkup( + React.createElement( + TooltipProvider, + null, + React.createElement( + ExternalLinkAnchor, + { + anchorProps: {}, + href: "https://example.com/tasks/t_5873512f", + isLinearLink: false, + label: "t_5873512f", + }, + "t_5873512f", + ), + ), + ); + + const className = html.match(/]*class="([^"]+)"/)?.[1] ?? ""; + assert.match(className, /(?:^| )no-underline(?: |$)/); + assert.match(className, /(?:^| )hover:underline(?: |$)/); + assert.doesNotMatch(className, /(?:^| )underline(?: |$)/); +}); diff --git a/desktop/src/shared/ui/markdown/ExternalLinkAnchor.tsx b/desktop/src/shared/ui/markdown/ExternalLinkAnchor.tsx index 00f19fb8dec..ff08a8d8689 100644 --- a/desktop/src/shared/ui/markdown/ExternalLinkAnchor.tsx +++ b/desktop/src/shared/ui/markdown/ExternalLinkAnchor.tsx @@ -42,7 +42,7 @@ export function ExternalLinkAnchor({