summaryrefslogtreecommitdiff
path: root/packages/integrations/mdx/test/mdx-plus-react-errors.test.js
blob: 9d87fa8a0045ff517a70af54ccc22b4851e28f8b (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
import * as assert from 'node:assert/strict';
import { describe, it } from 'node:test';
import { loadFixture } from '../../../astro/test/test-utils.js';

function hookError() {
	const error = console.error;
	const errors = [];
	console.error = function (...args) {
		errors.push(args);
	};
	return () => {
		console.error = error;
		return errors;
	};
}

describe('MDX and React with build errors', () => {
	let fixture;
	let unhook;

	it('shows correct error messages on build error', async () => {
		try {
			fixture = await loadFixture({
				root: new URL('./fixtures/mdx-plus-react-errors/', import.meta.url),
			});
			unhook = hookError();
			await fixture.build();
		} catch (err) {
			assert.equal(err.message, 'a is not defined');
		}
		unhook();
	});
});