summaryrefslogtreecommitdiff
path: root/packages/integrations/vercel/test
diff options
context:
space:
mode:
Diffstat (limited to 'packages/integrations/vercel/test')
-rw-r--r--packages/integrations/vercel/test/fixtures/image/astro.config.mjs7
-rw-r--r--packages/integrations/vercel/test/fixtures/image/src/assets/penguin.jpgbin0 -> 258734 bytes
-rw-r--r--packages/integrations/vercel/test/fixtures/image/src/pages/index.astro5
-rw-r--r--packages/integrations/vercel/test/image.test.js11
4 files changed, 22 insertions, 1 deletions
diff --git a/packages/integrations/vercel/test/fixtures/image/astro.config.mjs b/packages/integrations/vercel/test/fixtures/image/astro.config.mjs
index ec1fb91f0..5c4aa7709 100644
--- a/packages/integrations/vercel/test/fixtures/image/astro.config.mjs
+++ b/packages/integrations/vercel/test/fixtures/image/astro.config.mjs
@@ -3,7 +3,12 @@ import { defineConfig } from 'astro/config';
import { testImageService } from '../../test-image-service.js';
export default defineConfig({
- adapter: vercel({ imageService: true }),
+ adapter: vercel({
+ imageService: true,
+ }),
+ experimental: {
+ responsiveImages: true,
+ },
image: {
service: testImageService(),
domains: ['astro.build'],
diff --git a/packages/integrations/vercel/test/fixtures/image/src/assets/penguin.jpg b/packages/integrations/vercel/test/fixtures/image/src/assets/penguin.jpg
new file mode 100644
index 000000000..73f0ee316
--- /dev/null
+++ b/packages/integrations/vercel/test/fixtures/image/src/assets/penguin.jpg
Binary files differ
diff --git a/packages/integrations/vercel/test/fixtures/image/src/pages/index.astro b/packages/integrations/vercel/test/fixtures/image/src/pages/index.astro
index db7c22eeb..b4dff7143 100644
--- a/packages/integrations/vercel/test/fixtures/image/src/pages/index.astro
+++ b/packages/integrations/vercel/test/fixtures/image/src/pages/index.astro
@@ -2,6 +2,7 @@
import { Image } from "astro:assets";
import astro from "../assets/astro.jpeg";
import penguin from "../assets/penguin.svg";
+import bigPenguin from "../assets/penguin.jpg";
---
<div id="basic-image">
@@ -11,3 +12,7 @@ import penguin from "../assets/penguin.svg";
<div id="svg">
<Image src={penguin} alt="Astro" />
</div>
+
+<div id="responsive">
+ <Image src={bigPenguin} alt="Astro" layout="responsive" width="1000" />
+</div>
diff --git a/packages/integrations/vercel/test/image.test.js b/packages/integrations/vercel/test/image.test.js
index 6def54086..f5dac6d86 100644
--- a/packages/integrations/vercel/test/image.test.js
+++ b/packages/integrations/vercel/test/image.test.js
@@ -74,5 +74,16 @@ describe('Image', () => {
assert.equal(res.status, 200);
assert.equal(res.headers.get('content-type'), 'image/svg+xml');
});
+
+ it('generates valid srcset for responsive images', async () => {
+ const html = await fixture.fetch('/').then((res) => res.text());
+ const $ = cheerio.load(html);
+ const img = $('#responsive img');
+ const widths = img
+ .attr('srcset')
+ .split(', ')
+ .map((entry) => entry.split(' ')[1]);
+ assert.deepEqual(widths, ['640w', '750w', '828w', '1080w', '1200w', '1920w']);
+ });
});
});