import MarkdownIt from "markdown-it"; import { describe, expect, it } from "vitest"; describe("autolink", () => { const markdownIt = MarkdownIt(); markdownIt.options.linkify = true; it("Should resolve bare link", () => { expect(markdownIt.render(`https://example.com`)).toBe( '
\n', ); expect(markdownIt.render(`https://example.com/a/`)).toBe( '\n', ); expect(markdownIt.render(`https://example.com/a/b.html`)).toBe( '\n', ); expect( markdownIt.render(` https://example.com `), ).toBe('\n'); expect( markdownIt.render(` https://example.com/a/ `), ).toBe( '\n', ); expect( markdownIt.render(` https://example.com/a/b.html `), ).toBe( '\n', ); }); it("Should resolve auto link", () => { expect(markdownIt.render(`Please open https://example.com for more details
\n', ); expect( markdownIt.render(`Please open https://example.com/a/ for more details`), ).toBe( 'Please open https://example.com/a/ for more details
\n', ); expect( markdownIt.render( `Please open https://example.com/a/b.html for more details`, ), ).toBe( 'Please open https://example.com/a/b.html for more details
\n', ); expect( markdownIt.render(` Please open https://example.com for more details `), ).toBe( 'Please open https://example.com for more details
\n', ); expect( markdownIt.render(` Please open https://example.com/a/ for more details `), ).toBe( 'Please open https://example.com/a/ for more details
\n', ); expect( markdownIt.render( ` Please open https://example.com/a/b.html for more details `, ), ).toBe( 'Please open https://example.com/a/b.html for more details
\n', ); }); it("Should resolve auto link in text", () => { expect( markdownIt.render(`Please openPlease open https://example.com for more details
\n', ); expect( markdownIt.render( `Please openPlease open https://example.com/a/ for more details
\n', ); expect( markdownIt.render( `Please openPlease open https://example.com/a/b.html for more details
\n', ); expect( markdownIt.render(` Please openPlease open https://example.com for more details
\n', ); expect( markdownIt.render(` Please openPlease open https://example.com/a/ for more details
\n', ); expect( markdownIt.render( ` Please openPlease open https://example.com/a/b.html for more details
\n', ); }); });