aboutsummaryrefslogtreecommitdiff
path: root/packages/integrations/vercel/test/serverless-prerender.test.js
diff options
context:
space:
mode:
Diffstat (limited to 'packages/integrations/vercel/test/serverless-prerender.test.js')
-rw-r--r--packages/integrations/vercel/test/serverless-prerender.test.js55
1 files changed, 55 insertions, 0 deletions
diff --git a/packages/integrations/vercel/test/serverless-prerender.test.js b/packages/integrations/vercel/test/serverless-prerender.test.js
new file mode 100644
index 000000000..61e239300
--- /dev/null
+++ b/packages/integrations/vercel/test/serverless-prerender.test.js
@@ -0,0 +1,55 @@
+import assert from 'node:assert/strict';
+import { before, describe, it } from 'node:test';
+import { loadFixture } from './test-utils.js';
+
+describe('Serverless prerender', () => {
+ /** @type {import('./test-utils').Fixture} */
+ let fixture;
+
+ before(async () => {
+ process.env.PRERENDER = true;
+ fixture = await loadFixture({
+ root: './fixtures/serverless-prerender/',
+ });
+ await fixture.build();
+ });
+
+ it('build successful', async () => {
+ assert.ok(await fixture.readFile('../.vercel/output/static/index.html'));
+ });
+
+ it('outDir is tree-shaken if not needed', async () => {
+ const [file] = await fixture.glob(
+ '../.vercel/output/functions/_render.func/packages/integrations/vercel/test/fixtures/serverless-prerender/.vercel/output/_functions/pages/_image.astro.mjs',
+ );
+ const contents = await fixture.readFile(file);
+ assert.ok(!contents.includes('const outDir ='), "outDir is tree-shaken if it's not imported");
+ });
+
+ // TODO: The path here seems to be inconsistent?
+ it.skip('includeFiles work', async () => {
+ assert.ok(
+ await fixture.readFile(
+ '../.vercel/output/functions/render.func/packages/integrations/vercel/test/fixtures/serverless-prerender/dist/middleware.mjs',
+ ),
+ );
+ });
+});
+
+describe('Serverless hybrid rendering', () => {
+ /** @type {import('./test-utils').Fixture} */
+ let fixture;
+
+ before(async () => {
+ process.env.PRERENDER = true;
+ fixture = await loadFixture({
+ root: './fixtures/serverless-prerender/',
+ output: 'hybrid',
+ });
+ await fixture.build();
+ });
+
+ it('build successful', async () => {
+ assert.ok(await fixture.readFile('../.vercel/output/static/index.html'));
+ });
+});