summaryrefslogtreecommitdiff
path: root/packages/integrations/mdx/test
diff options
context:
space:
mode:
Diffstat (limited to 'packages/integrations/mdx/test')
-rw-r--r--packages/integrations/mdx/test/css-head-mdx.test.js6
-rw-r--r--packages/integrations/mdx/test/fixtures/mdx-images/astro.config.ts8
-rw-r--r--packages/integrations/mdx/test/fixtures/mdx-images/src/pages/content-collection.astro4
-rw-r--r--packages/integrations/mdx/test/fixtures/mdx-images/src/pages/no-image.mdx1
-rw-r--r--packages/integrations/mdx/test/mdx-images.test.js14
5 files changed, 26 insertions, 7 deletions
diff --git a/packages/integrations/mdx/test/css-head-mdx.test.js b/packages/integrations/mdx/test/css-head-mdx.test.js
index 3123b22ce..96ee7c900 100644
--- a/packages/integrations/mdx/test/css-head-mdx.test.js
+++ b/packages/integrations/mdx/test/css-head-mdx.test.js
@@ -39,7 +39,7 @@ describe('Head injection w/ MDX', () => {
const { document } = parseHTML(html);
const links = document.querySelectorAll('head link[rel=stylesheet]');
- assert.equal(links.length, 2);
+ assert.equal(links.length, 1);
});
it('injects content from a component using Content#render()', async () => {
@@ -47,7 +47,7 @@ describe('Head injection w/ MDX', () => {
const { document } = parseHTML(html);
const links = document.querySelectorAll('head link[rel=stylesheet]');
- assert.equal(links.length, 2);
+ assert.equal(links.length, 1);
const scripts = document.querySelectorAll('script[type=module]');
assert.equal(scripts.length, 1);
@@ -79,7 +79,7 @@ describe('Head injection w/ MDX', () => {
const $ = cheerio.load(html);
const headLinks = $('head link[rel=stylesheet]');
- assert.equal(headLinks.length, 2);
+ assert.equal(headLinks.length, 1);
const bodyLinks = $('body link[rel=stylesheet]');
assert.equal(bodyLinks.length, 0);
diff --git a/packages/integrations/mdx/test/fixtures/mdx-images/astro.config.ts b/packages/integrations/mdx/test/fixtures/mdx-images/astro.config.ts
index 2e487f5a8..a6326190e 100644
--- a/packages/integrations/mdx/test/fixtures/mdx-images/astro.config.ts
+++ b/packages/integrations/mdx/test/fixtures/mdx-images/astro.config.ts
@@ -1,9 +1,13 @@
import mdx from '@astrojs/mdx';
import { testImageService } from '../../../../../astro/test/test-image-service.js';
+import { defineConfig } from 'astro/config';
-export default {
+export default defineConfig({
integrations: [mdx()],
image: {
service: testImageService(),
},
-}
+ experimental: {
+ responsiveImages: true,
+ }
+})
diff --git a/packages/integrations/mdx/test/fixtures/mdx-images/src/pages/content-collection.astro b/packages/integrations/mdx/test/fixtures/mdx-images/src/pages/content-collection.astro
index 63d068b5c..68a3fe3ba 100644
--- a/packages/integrations/mdx/test/fixtures/mdx-images/src/pages/content-collection.astro
+++ b/packages/integrations/mdx/test/fixtures/mdx-images/src/pages/content-collection.astro
@@ -1,9 +1,9 @@
---
-import { getEntry } from 'astro:content';
+import { getEntry, render } from 'astro:content';
import MyImage from 'src/components/MyImage.astro';
const entry = await getEntry('blog', 'entry');
-const { Content } = await entry.render();
+const { Content } = await render(entry)
---
<!DOCTYPE html>
diff --git a/packages/integrations/mdx/test/fixtures/mdx-images/src/pages/no-image.mdx b/packages/integrations/mdx/test/fixtures/mdx-images/src/pages/no-image.mdx
new file mode 100644
index 000000000..944c593a9
--- /dev/null
+++ b/packages/integrations/mdx/test/fixtures/mdx-images/src/pages/no-image.mdx
@@ -0,0 +1 @@
+Nothing to see here.
diff --git a/packages/integrations/mdx/test/mdx-images.test.js b/packages/integrations/mdx/test/mdx-images.test.js
index 3d544f855..543b9021e 100644
--- a/packages/integrations/mdx/test/mdx-images.test.js
+++ b/packages/integrations/mdx/test/mdx-images.test.js
@@ -65,4 +65,18 @@ describe('MDX Page', () => {
});
}
});
+
+ describe('build', () => {
+ before(async () => {
+ await fixture.build();
+ });
+ it('includes responsive styles', async () => {
+ const code = await fixture.readFile('/index.html');
+ assert.ok(code.includes('[data-astro-image]'));
+ });
+ it("doesn't include styles on pages without images", async () => {
+ const code = await fixture.readFile('/no-image/index.html');
+ assert.ok(!code.includes('[data-astro-image]'));
+ });
+ });
});