From 1af13dd70d3a139d3316b661d4056650cb58bd1b Mon Sep 17 00:00:00 2001 From: Remco Haszing Date: Fri, 7 Jul 2023 15:37:50 +0200 Subject: [PATCH] Restore the use of regex to test error messages --- packages/esbuild/test/index.test.js | 8 ++----- packages/mdx/test/compile.js | 35 +++++++++-------------------- 2 files changed, 12 insertions(+), 31 deletions(-) diff --git a/packages/esbuild/test/index.test.js b/packages/esbuild/test/index.test.js index be9484288..be6ef3f55 100644 --- a/packages/esbuild/test/index.test.js +++ b/packages/esbuild/test/index.test.js @@ -146,9 +146,7 @@ test('@mdx-js/esbuild', async () => { outfile: fileURLToPath(new URL('esbuild-md-as-mdx.js', import.meta.url)), plugins: [esbuildMdx({format: 'mdx'})] }), - new Error( - 'Build failed with 1 error:\nerror: No loader is configured for ".md" files: test/esbuild.md' - ), + /No loader is configured for "\.md" files/, 'should not handle `.md` files w/ `format: mdx`' ) @@ -159,9 +157,7 @@ test('@mdx-js/esbuild', async () => { outfile: fileURLToPath(new URL('esbuild-md-as-mdx.js', import.meta.url)), plugins: [esbuildMdx({format: 'md'})] }), - new Error( - 'Build failed with 1 error:\nerror: No loader is configured for ".mdx" files: test/esbuild.mdx' - ), + /No loader is configured for "\.mdx" files/, 'should not handle `.mdx` files w/ `format: md`' ) diff --git a/packages/mdx/test/compile.js b/packages/mdx/test/compile.js index 6737a8ac4..3600e4e57 100644 --- a/packages/mdx/test/compile.js +++ b/packages/mdx/test/compile.js @@ -38,9 +38,8 @@ test('compile', async () => { assert.throws( // @ts-expect-error: removed option. () => compile('# hi!', {filepath: 'example.mdx'}), - new Error( - '`options.filepath` is no longer supported. Please see for more information' - ) + /`options.filepath` is no longer supported/, + 'should throw when a removed option is passed' ) assert.equal( @@ -306,7 +305,7 @@ test('compile', async () => { await run(compileSync('export var X = () => \n\n')) ) ), - new ReferenceError('Y is not defined'), + /Y is not defined/, 'should throw on missing components in exported components' ) @@ -465,9 +464,7 @@ test('compile', async () => { async () => { renderToStaticMarkup(React.createElement(await run(compileSync('')))) }, - new Error( - 'Expected component `X` to be defined: you likely forgot to import, pass, or provide it.' - ), + /Expected component `X` to be defined/, 'should throw if a required component is not passed' ) @@ -477,9 +474,7 @@ test('compile', async () => { React.createElement(await run(compileSync(''))) ) }, - new Error( - 'Expected object `a` to be defined: you likely forgot to import, pass, or provide it.' - ), + /Expected object `a` to be defined/, 'should throw if a required member is not passed' ) @@ -491,9 +486,7 @@ test('compile', async () => { ) ) }, - new Error( - 'Expected component `a.b` to be defined: you likely forgot to import, pass, or provide it.' - ), + /Expected component `a.b` to be defined/, 'should throw if a used member is not defined locally' ) @@ -505,9 +498,7 @@ test('compile', async () => { ) ) }, - new Error( - 'Expected object `x` to be defined: you likely forgot to import, pass, or provide it.' - ), + /Expected object `x` to be defined/, 'should throw if a used member is not defined locally (JSX in a function)' ) @@ -548,9 +539,7 @@ test('compile', async () => { ) ) }, - new Error( - 'Expected component `X` to be defined: you likely forgot to import, pass, or provide it.\nIt’s referenced in your code at `1:1-1:6`' - ), + /It’s referenced in your code at `1:1-1:6/, 'should pass more info to errors w/ `development: true`' ) @@ -567,9 +556,7 @@ test('compile', async () => { ) ) }, - new Error( - 'Expected object `a` to be defined: you likely forgot to import, pass, or provide it.\nIt’s referenced in your code at `1:5-1:12` in `folder/example.mdx`' - ), + /It’s referenced in your code at `1:5-1:12` in `folder\/example.mdx`/, 'should show what file contains the error w/ `development: true`, and `path`' ) @@ -603,9 +590,7 @@ test('compile', async () => { ) ) }, - new Error( - 'Expected component `X` to be defined: you likely forgot to import, pass, or provide it.' - ), + /Expected component `X` to be defined/, 'should throw if a required component is not passed or given to `MDXProvider`' )