Skip to main content
Module

x/lume/tests/esbuild.test.ts

πŸ”₯ Static site generator for Deno πŸ¦•
Very Popular
Go to Latest
File
import { assertSiteSnapshot, build, getSite } from "./utils.ts";import esbuild from "../plugins/esbuild.ts";
// Disable sanitizeOps & sanitizeResources because esbuild doesn't close themDeno.test( "esbuild plugin", { sanitizeOps: false, sanitizeResources: false }, async (t) => { const site = getSite({ src: "esbuild", });
// Test ignore with a function filter site.ignore((path) => path === "/modules" || path.startsWith("/modules/")); site.use(esbuild());
await build(site); await assertSiteSnapshot(t, site); },);
// Disable sanitizeOps & sanitizeResources because esbuild doesn't close themDeno.test( "esbuild plugin with splitting as true", { sanitizeOps: false, sanitizeResources: false }, async (t) => { const site = getSite({ src: "esbuild", });
// Test ignore with a function filter site.ignore((path) => path === "/modules" || path.startsWith("/modules/")); site.use(esbuild({ options: { splitting: true, outdir: "foo", }, }));
await build(site);
// Normalize chunk name site.pages.forEach((page) => { const url = page.data.url; if (!url) return; if (url.match(/chunk-[\w]{8}\.js/)) { page.data.url = url.replace(/chunk-[\w]{8}\.js/, "chunk.js"); page.src.slug = page.src.slug.replace(/chunk-[\w]{8}/, "chunk"); } else { const content = page.content as string; page.content = content.replace(/chunk-[\w]{8}\.js/, "chunk.js"); } });
await assertSiteSnapshot(t, site); },);