summaryrefslogtreecommitdiff
path: root/packages/integrations/mdx/test/mdx-infinite-loop.test.js
diff options
context:
space:
mode:
authorGravatar Nate Moore <natemoo-re@users.noreply.github.com> 2022-09-30 17:13:44 -0500
committerGravatar GitHub <noreply@github.com> 2022-09-30 17:13:44 -0500
commitcf2bba1e4a32ff7d424cc1c4954d6328167af8d7 (patch)
tree5b5f9b2fda89c1dfdbf9eda111b930de1a03f1e0 /packages/integrations/mdx/test/mdx-infinite-loop.test.js
parent0ae81479888ae76ce5ba6dc31b1c379675763797 (diff)
downloadastro-cf2bba1e4a32ff7d424cc1c4954d6328167af8d7.tar.gz
astro-cf2bba1e4a32ff7d424cc1c4954d6328167af8d7.tar.zst
astro-cf2bba1e4a32ff7d424cc1c4954d6328167af8d7.zip
P5: fix MDX memory leak (#4939)
* fix(astro): tag jsx vnodes with renderer so errors are properly handled * chore: fix missing package in test Co-authored-by: Nate Moore <nate@astro.build>
Diffstat (limited to 'packages/integrations/mdx/test/mdx-infinite-loop.test.js')
-rw-r--r--packages/integrations/mdx/test/mdx-infinite-loop.test.js30
1 files changed, 30 insertions, 0 deletions
diff --git a/packages/integrations/mdx/test/mdx-infinite-loop.test.js b/packages/integrations/mdx/test/mdx-infinite-loop.test.js
new file mode 100644
index 000000000..c76c24270
--- /dev/null
+++ b/packages/integrations/mdx/test/mdx-infinite-loop.test.js
@@ -0,0 +1,30 @@
+import mdx from '@astrojs/mdx';
+
+import { expect } from 'chai';
+import { loadFixture } from '../../../astro/test/test-utils.js';
+
+describe('MDX Infinite Loop', () => {
+ let fixture;
+
+ before(async () => {
+ fixture = await loadFixture({
+ root: new URL('./fixtures/mdx-infinite-loop/', import.meta.url),
+ integrations: [mdx()],
+ });
+ });
+
+ describe('build', () => {
+ let err;
+ before(async () => {
+ try {
+ await fixture.build();
+ } catch (e) {
+ err = e;
+ }
+ });
+
+ it('does not hang forever if an error is thrown', async () => {
+ expect(!!err).to.be.true;
+ });
+ });
+});