aboutsummaryrefslogtreecommitdiff
path: root/packages/integrations/vercel/test/split.test.js
diff options
context:
space:
mode:
authorGravatar Alexander Niebuhr <alexander@nbhr.io> 2024-08-29 07:37:24 +0200
committerGravatar Alexander Niebuhr <alexander@nbhr.io> 2024-08-29 07:46:34 +0200
commitc1f560dcd90a262a103b8644b1e2eb8da87f2e3a (patch)
treed8f984474569500beac2adc0c9ea0781bd3f5f47 /packages/integrations/vercel/test/split.test.js
parent93a1db68cd9cf3bb2a4d9f7a8af13cbd881eb701 (diff)
parent9543bdca342bf68d6db705b11c8201d3374ccbe0 (diff)
downloadastro-c1f560dcd90a262a103b8644b1e2eb8da87f2e3a.tar.gz
astro-c1f560dcd90a262a103b8644b1e2eb8da87f2e3a.tar.zst
astro-c1f560dcd90a262a103b8644b1e2eb8da87f2e3a.zip
Merge branch 'vercel' into main
Diffstat (limited to 'packages/integrations/vercel/test/split.test.js')
-rw-r--r--packages/integrations/vercel/test/split.test.js32
1 files changed, 32 insertions, 0 deletions
diff --git a/packages/integrations/vercel/test/split.test.js b/packages/integrations/vercel/test/split.test.js
new file mode 100644
index 000000000..4105db7fc
--- /dev/null
+++ b/packages/integrations/vercel/test/split.test.js
@@ -0,0 +1,32 @@
+import assert from 'node:assert/strict';
+import { before, describe, it } from 'node:test';
+import { loadFixture } from './test-utils.js';
+
+describe('build: split', () => {
+ /** @type {import('./test-utils').Fixture} */
+ let fixture;
+
+ before(async () => {
+ fixture = await loadFixture({
+ root: './fixtures/functionPerRoute/',
+ output: 'server',
+ });
+ await fixture.build();
+ });
+
+ it('creates separate functions for non-prerendered pages', async () => {
+ const files = await fixture.readdir('../.vercel/output/functions/');
+ assert.equal(files.length, 3);
+ assert.equal(files.includes('prerender.astro.func'), false);
+ });
+
+ it('creates the route definitions in the config.json', async () => {
+ const json = await fixture.readFile('../.vercel/output/config.json');
+ const config = JSON.parse(json);
+ assert.equal(config.routes.length, 5);
+ assert.equal(
+ config.routes.some((route) => route.dest === 'prerender.astro'),
+ false,
+ );
+ });
+});