diff options
Diffstat (limited to 'packages/integrations/vercel/test')
5 files changed, 58 insertions, 0 deletions
diff --git a/packages/integrations/vercel/test/fixtures/no-output/astro.config.mjs b/packages/integrations/vercel/test/fixtures/no-output/astro.config.mjs new file mode 100644 index 000000000..664b64d56 --- /dev/null +++ b/packages/integrations/vercel/test/fixtures/no-output/astro.config.mjs @@ -0,0 +1,6 @@ +import { defineConfig } from 'astro/config'; +import vercel from '@astrojs/vercel/serverless'; + +export default defineConfig({ + adapter: vercel() +}); diff --git a/packages/integrations/vercel/test/fixtures/no-output/package.json b/packages/integrations/vercel/test/fixtures/no-output/package.json new file mode 100644 index 000000000..604b4e4ea --- /dev/null +++ b/packages/integrations/vercel/test/fixtures/no-output/package.json @@ -0,0 +1,9 @@ +{ + "name": "@test/astro-vercel-no-output", + "version": "0.0.0", + "private": true, + "dependencies": { + "@astrojs/vercel": "workspace:*", + "astro": "workspace:*" + } +} diff --git a/packages/integrations/vercel/test/fixtures/no-output/src/pages/index.astro b/packages/integrations/vercel/test/fixtures/no-output/src/pages/index.astro new file mode 100644 index 000000000..6368ce118 --- /dev/null +++ b/packages/integrations/vercel/test/fixtures/no-output/src/pages/index.astro @@ -0,0 +1,8 @@ +<html> + <head> + <title>testing</title> + </head> + <body> + <h1>testing</h1> + </body> +</html> diff --git a/packages/integrations/vercel/test/no-output.test.js b/packages/integrations/vercel/test/no-output.test.js new file mode 100644 index 000000000..c82d45210 --- /dev/null +++ b/packages/integrations/vercel/test/no-output.test.js @@ -0,0 +1,25 @@ +import { loadFixture } from './test-utils.js'; +import { expect } from 'chai'; + +describe('Missing output config', () => { + /** @type {import('./test-utils').Fixture} */ + let fixture; + + before(async () => { + fixture = await loadFixture({ + root: './fixtures/no-output/', + }); + }); + + it('throws during the build', async () => { + let error = undefined; + try { + await fixture.build(); + } catch(err) { + error = err; + } + expect(error).to.not.be.equal(undefined); + expect(error.message).to.include(`output: "server"`); + }); +}); + diff --git a/packages/integrations/vercel/test/test-utils.js b/packages/integrations/vercel/test/test-utils.js new file mode 100644 index 000000000..6bb3e7c25 --- /dev/null +++ b/packages/integrations/vercel/test/test-utils.js @@ -0,0 +1,10 @@ +import { loadFixture as baseLoadFixture } from '../../../astro/test/test-utils.js'; + +export { fixLineEndings } from '../../../astro/test/test-utils.js'; + +export function loadFixture(config) { + if (config?.root) { + config.root = new URL(config.root, import.meta.url); + } + return baseLoadFixture(config); +} |