summaryrefslogtreecommitdiff
path: root/test/astro-dynamic.test.js
diff options
context:
space:
mode:
Diffstat (limited to 'test/astro-dynamic.test.js')
-rw-r--r--test/astro-dynamic.test.js30
1 files changed, 30 insertions, 0 deletions
diff --git a/test/astro-dynamic.test.js b/test/astro-dynamic.test.js
new file mode 100644
index 000000000..41235b6ce
--- /dev/null
+++ b/test/astro-dynamic.test.js
@@ -0,0 +1,30 @@
+import { suite } from 'uvu';
+import * as assert from 'uvu/assert';
+import { doc } from './test-utils.js';
+import { setup } from './helpers.js';
+
+const DynamicComponents = suite('Dynamic components tests');
+
+setup(DynamicComponents, './fixtures/astro-dynamic');
+
+DynamicComponents('Loads client-only packages', async ({ runtime }) => {
+ let result = await runtime.load('/');
+
+ assert.equal(result.statusCode, 200);
+
+ // Grab the react-dom import
+ const exp = /import\("(.+?)"\)/g;
+ let match, reactDomURL;
+ while(match = exp.exec(result.contents)) {
+ if(match[1].includes('react-dom')) {
+ reactDomURL = match[1];
+ }
+ }
+
+ assert.ok(reactDomURL, 'React dom is on the page');
+
+ result = await runtime.load(reactDomURL);
+ assert.equal(result.statusCode, 200, 'Can load react-dom');
+});
+
+DynamicComponents.run();