dev-utils.test.js — astro Source File
Architecture documentation for dev-utils.test.js, a javascript file in the astro codebase. 3 imports, 0 dependents.
Entity Profile
Dependency Diagram
graph LR 397ad1b3_fbdd_6e5c_e948_8bf7791f56bc["dev-utils.test.js"] 86fef172_7098_bd8c_baf0_beeb920af0a1["../../../dist/core/errors/dev/utils.js"] 397ad1b3_fbdd_6e5c_e948_8bf7791f56bc --> 86fef172_7098_bd8c_baf0_beeb920af0a1 e1e2fac7_5a95_7a88_cb1e_0a3b91c4e607["strict"] 397ad1b3_fbdd_6e5c_e948_8bf7791f56bc --> e1e2fac7_5a95_7a88_cb1e_0a3b91c4e607 6b0635f9_51ea_77aa_767b_7857878e98a6["node:test"] 397ad1b3_fbdd_6e5c_e948_8bf7791f56bc --> 6b0635f9_51ea_77aa_767b_7857878e98a6 style 397ad1b3_fbdd_6e5c_e948_8bf7791f56bc fill:#6366f1,stroke:#818cf8,color:#fff
Relationship Graph
Source Code
import * as assert from 'node:assert/strict';
import { describe, it } from 'node:test';
import { renderErrorMarkdown } from '../../../dist/core/errors/dev/utils.js';
describe('renderErrorMarkdown', () => {
describe('html target', () => {
it('converts markdown links to HTML anchor tags', () => {
const input = 'Check the [documentation](https://docs.astro.build)';
const result = renderErrorMarkdown(input, 'html');
assert.equal(
result,
'Check the <a href="https://docs.astro.build" target="_blank">documentation</a>',
);
});
it('converts bold text to HTML b tags', () => {
const input = 'This is **important** text';
const result = renderErrorMarkdown(input, 'html');
assert.equal(result, 'This is <b>important</b> text');
});
it('converts inline code to HTML code tags', () => {
const input = 'Use the `console.log` function';
const result = renderErrorMarkdown(input, 'html');
assert.equal(result, 'Use the <code>console.log</code> function');
});
it('converts bare URLs to HTML anchor tags', () => {
const input = 'Visit https://astro.build for more info';
const result = renderErrorMarkdown(input, 'html');
assert.equal(
result,
'Visit <a href="https://astro.build" target="_blank">https://astro.build</a> for more info',
);
});
it('escapes HTML entities in the input', () => {
const input = 'Use <script> tags carefully';
const result = renderErrorMarkdown(input, 'html');
assert.ok(result.includes('<script>'));
});
it('handles multiple markdown elements', () => {
const input = 'Check **bold** and `code` and [link](https://example.com)';
const result = renderErrorMarkdown(input, 'html');
assert.ok(result.includes('<b>bold</b>'));
assert.ok(result.includes('<code>code</code>'));
assert.ok(result.includes('<a href="https://example.com" target="_blank">link</a>'));
});
it('handles link with parentheses followed by more content', () => {
// This is the bug case from issue #15068
// The link [text](url) should not consume content after it
const input = 'use [text](https://example.com) for links';
const result = renderErrorMarkdown(input, 'html');
assert.equal(result, 'use <a href="https://example.com" target="_blank">text</a> for links');
});
it('handles link followed by closing parenthesis', () => {
// Edge case: link inside parentheses like "(use [text](url))"
// ... (165 more lines)
Domain
Dependencies
- ../../../dist/core/errors/dev/utils.js
- node:test
- strict
Source
Frequently Asked Questions
What does dev-utils.test.js do?
dev-utils.test.js is a source file in the astro codebase, written in javascript. It belongs to the IntegrationAdapters domain.
What does dev-utils.test.js depend on?
dev-utils.test.js imports 3 module(s): ../../../dist/core/errors/dev/utils.js, node:test, strict.
Where is dev-utils.test.js in the architecture?
dev-utils.test.js is located at packages/astro/test/units/errors/dev-utils.test.js (domain: IntegrationAdapters, directory: packages/astro/test/units/errors).
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free