createTestPrerenderer() — astro Function Reference
Architecture documentation for the createTestPrerenderer() function in test-prerenderer.js from the astro codebase.
Entity Profile
Dependency Diagram
graph TD eec5e111_2dfc_6808_4911_a2c543b8464f["createTestPrerenderer()"] 68407ce2_f297_0f69_e923_be3697615739["test-prerenderer.js"] eec5e111_2dfc_6808_4911_a2c543b8464f -->|defined in| 68407ce2_f297_0f69_e923_be3697615739 style eec5e111_2dfc_6808_4911_a2c543b8464f fill:#6366f1,stroke:#818cf8,color:#fff
Relationship Graph
Source Code
packages/astro/test/test-prerenderer.js lines 24–85
export default function createTestPrerenderer(callbacks = {}) {
const calls = {
setup: 0,
getStaticPaths: 0,
render: 0,
teardown: 0,
};
const renderedPaths = [];
const integration = {
name: 'test-prerenderer-integration',
hooks: {
'astro:build:start': ({ setPrerenderer }) => {
// Use factory function to receive the default prerenderer
setPrerenderer((defaultPrerenderer) => ({
name: 'test-prerenderer',
async setup() {
calls.setup++;
callbacks.onSetup?.();
// Delegate to the default prerenderer's setup
if (defaultPrerenderer?.setup) {
await defaultPrerenderer.setup();
}
},
async getStaticPaths() {
calls.getStaticPaths++;
callbacks.onGetStaticPaths?.();
// Delegate to the default prerenderer
return defaultPrerenderer.getStaticPaths();
},
async render(request, { routeData }) {
calls.render++;
const url = new URL(request.url);
renderedPaths.push(url.pathname);
callbacks.onRender?.(request, routeData);
// Delegate to the default prerenderer
return defaultPrerenderer.render(request, { routeData });
},
async teardown() {
calls.teardown++;
callbacks.onTeardown?.();
// Delegate to the default prerenderer's teardown
if (defaultPrerenderer?.teardown) {
await defaultPrerenderer.teardown();
}
},
}));
},
},
};
return {
integration,
calls,
renderedPaths,
};
}
Domain
Subdomains
Defined In
Source
Frequently Asked Questions
What does createTestPrerenderer() do?
createTestPrerenderer() is a function in the astro codebase, defined in packages/astro/test/test-prerenderer.js.
Where is createTestPrerenderer() defined?
createTestPrerenderer() is defined in packages/astro/test/test-prerenderer.js at line 24.
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free