astro/packages/markdown/remark/test/autolinking.test.js

37 lines
1.1 KiB
JavaScript

import { createMarkdownProcessor } from '../dist/index.js';
import chai from 'chai';
describe('autolinking', () => {
describe('plain md', async () => {
const processor = await createMarkdownProcessor();
it('autolinks URLs starting with a protocol in plain text', async () => {
const { code } = await processor.render(`See https://example.com for more.`);
chai
.expect(code.replace(/\n/g, ''))
.to.equal(`<p>See <a href="https://example.com">https://example.com</a> for more.</p>`);
});
it('autolinks URLs starting with "www." in plain text', async () => {
const { code } = await processor.render(`See www.example.com for more.`);
chai
.expect(code.trim())
.to.equal(`<p>See <a href="http://www.example.com">www.example.com</a> for more.</p>`);
});
it('does not autolink URLs in code blocks', async () => {
const { code } = await processor.render(
'See `https://example.com` or `www.example.com` for more.'
);
chai
.expect(code.trim())
.to.equal(
`<p>See <code>https://example.com</code> or ` +
`<code>www.example.com</code> for more.</p>`
);
});
});
});