aboutsummaryrefslogtreecommitdiff
path: root/packages/integrations/cloudflare/test/with-vue.test.js
diff options
context:
space:
mode:
Diffstat (limited to 'packages/integrations/cloudflare/test/with-vue.test.js')
-rw-r--r--packages/integrations/cloudflare/test/with-vue.test.js37
1 files changed, 37 insertions, 0 deletions
diff --git a/packages/integrations/cloudflare/test/with-vue.test.js b/packages/integrations/cloudflare/test/with-vue.test.js
new file mode 100644
index 000000000..60e210750
--- /dev/null
+++ b/packages/integrations/cloudflare/test/with-vue.test.js
@@ -0,0 +1,37 @@
+import * as assert from 'node:assert/strict';
+import { after, before, describe, it } from 'node:test';
+import { fileURLToPath } from 'node:url';
+import * as cheerio from 'cheerio';
+import { astroCli, wranglerCli } from './_test-utils.js';
+
+const root = new URL('./fixtures/with-vue/', import.meta.url);
+
+describe('Vue', () => {
+ let wrangler;
+ before(async () => {
+ await astroCli(fileURLToPath(root), 'build');
+
+ wrangler = wranglerCli(fileURLToPath(root));
+ await new Promise((resolve) => {
+ wrangler.stdout.on('data', (data) => {
+ // console.log('[stdout]', data.toString());
+ if (data.toString().includes('http://127.0.0.1:8788')) resolve();
+ });
+ wrangler.stderr.on('data', (data) => {
+ // console.log('[stderr]', data.toString());
+ });
+ });
+ });
+
+ after((done) => {
+ wrangler.kill();
+ });
+
+ it('renders the vue component', async () => {
+ const res = await fetch('http://127.0.0.1:8788/');
+ assert.equal(res.status, 200);
+ const html = await res.text();
+ const $ = cheerio.load(html);
+ assert.equal($('.vue').text(), 'Vue Content');
+ });
+});