test-utils.js — astro Source File
Architecture documentation for test-utils.js, a javascript file in the astro codebase. 14 imports, 26 dependents.
Entity Profile
Dependency Diagram
graph LR b0be4d0c_86b6_a283_f2af_003189bfd572["test-utils.js"] b2422adc_24c2_e60f_84b9_b20b83b3d7f0["../../dist/core/client-directive/index.js"] b0be4d0c_86b6_a283_f2af_003189bfd572 --> b2422adc_24c2_e60f_84b9_b20b83b3d7f0 011fcd63_bba9_72a2_e9be_9bc0a8c48876["../../dist/core/config/index.js"] b0be4d0c_86b6_a283_f2af_003189bfd572 --> 011fcd63_bba9_72a2_e9be_9bc0a8c48876 2881c812_2cb4_5561_beeb_f1ae6861ed11["../../dist/core/config/settings.js"] b0be4d0c_86b6_a283_f2af_003189bfd572 --> 2881c812_2cb4_5561_beeb_f1ae6861ed11 d941fcda_7a73_7111_5c8f_ff626cd2fcad["../../../dist/core/dev/container.js"] b0be4d0c_86b6_a283_f2af_003189bfd572 --> d941fcda_7a73_7111_5c8f_ff626cd2fcad f5b154b4_7bf2_7c8f_2105_5c84d2420bd1["../../dist/core/logger/core.js"] b0be4d0c_86b6_a283_f2af_003189bfd572 --> f5b154b4_7bf2_7c8f_2105_5c84d2420bd1 142ceb54_9d83_884f_947a_be25e52f3c42["../../dist/core/logger/node.js"] b0be4d0c_86b6_a283_f2af_003189bfd572 --> 142ceb54_9d83_884f_947a_be25e52f3c42 6ba31221_a5dc_dcfc_103d_5e67ee06af14["../../dist/core/middleware/noop-middleware.js"] b0be4d0c_86b6_a283_f2af_003189bfd572 --> 6ba31221_a5dc_dcfc_103d_5e67ee06af14 d19eaaa2_5ff2_f92e_05ab_a0aabaf3217b["../../dist/core/render/index.js"] b0be4d0c_86b6_a283_f2af_003189bfd572 --> d19eaaa2_5ff2_f92e_05ab_a0aabaf3217b 3b40d2b0_ce07_83ad_60c7_60450ae51460["../../dist/core/render/route-cache.js"] b0be4d0c_86b6_a283_f2af_003189bfd572 --> 3b40d2b0_ce07_83ad_60c7_60450ae51460 fc0217ba_5b68_32cc_f77d_49b4596e615e["node:events"] b0be4d0c_86b6_a283_f2af_003189bfd572 --> fc0217ba_5b68_32cc_f77d_49b4596e615e e16a223b_37f3_6b25_1ee1_2b7bcb9d9415["node:fs"] b0be4d0c_86b6_a283_f2af_003189bfd572 --> e16a223b_37f3_6b25_1ee1_2b7bcb9d9415 d9a92db9_c95e_9165_13ac_24b3d859d946["node:url"] b0be4d0c_86b6_a283_f2af_003189bfd572 --> d9a92db9_c95e_9165_13ac_24b3d859d946 8d781611_e751_fd5d_6d9a_a5793d2fd30a["fs-fixture"] b0be4d0c_86b6_a283_f2af_003189bfd572 --> 8d781611_e751_fd5d_6d9a_a5793d2fd30a 0132f612_2bd0_7945_e548_57b5235cfc54["node-mocks-http"] b0be4d0c_86b6_a283_f2af_003189bfd572 --> 0132f612_2bd0_7945_e548_57b5235cfc54 style b0be4d0c_86b6_a283_f2af_003189bfd572 fill:#6366f1,stroke:#818cf8,color:#fff
Relationship Graph
Source Code
import { EventEmitter } from 'node:events';
import realFS from 'node:fs';
import { fileURLToPath } from 'node:url';
import { createFixture as _createFixture } from 'fs-fixture';
import httpMocks from 'node-mocks-http';
import { getDefaultClientDirectives } from '../../dist/core/client-directive/index.js';
import { resolveConfig } from '../../dist/core/config/index.js';
import { createBaseSettings } from '../../dist/core/config/settings.js';
import { createContainer } from '../../dist/core/dev/container.js';
import { AstroIntegrationLogger, Logger } from '../../dist/core/logger/core.js';
import { nodeLogDestination } from '../../dist/core/logger/node.js';
import { NOOP_MIDDLEWARE_FN } from '../../dist/core/middleware/noop-middleware.js';
import { Pipeline } from '../../dist/core/render/index.js';
import { RouteCache } from '../../dist/core/render/route-cache.js';
/** @type {import('../../src/core/logger/core').Logger} */
export const defaultLogger = new Logger({
dest: nodeLogDestination,
level: 'error',
});
const tempFixturesDir = fileURLToPath(new URL('./_temp-fixtures/', import.meta.url));
/**
* @param {import('fs-fixture').FileTree} tree
*/
export async function createFixture(tree) {
return await _createFixture(
{
'package.json': '{}',
...tree,
},
{
tempDir: tempFixturesDir,
},
);
}
export function createRequestAndResponse(reqOptions = {}) {
const req = httpMocks.createRequest(reqOptions);
req.headers.host ||= 'localhost';
const res = httpMocks.createResponse({
eventEmitter: EventEmitter,
req,
});
// When the response is complete.
const done = toPromise(res);
// Get the response as text
const text = async () => {
let chunks = await done;
return buffersToString(chunks);
};
// Get the response as json
const json = async () => {
const raw = await text();
return JSON.parse(raw);
// ... (144 more lines)
Domain
Subdomains
Functions
Classes
Dependencies
- ../../../dist/core/dev/container.js
- ../../dist/core/client-directive/index.js
- ../../dist/core/config/index.js
- ../../dist/core/config/settings.js
- ../../dist/core/logger/core.js
- ../../dist/core/logger/node.js
- ../../dist/core/middleware/noop-middleware.js
- ../../dist/core/render/index.js
- ../../dist/core/render/route-cache.js
- fs-fixture
- node-mocks-http
- node:events
- node:fs
- node:url
Imported By
- packages/astro/test/units/integrations/api.test.js
- packages/astro/test/units/dev/base.test.js
- packages/astro/test/units/render/chunk.test.js
- packages/astro/test/client-address-node.test.js
- packages/astro/test/units/render/components.test.js
- packages/astro/test/units/assets/fonts/core.test.js
- packages/astro/test/units/cli/create-key.test.js
- packages/astro/test/units/dev/dev.test.js
- packages/astro/test/units/cli/docs.test.js
- packages/astro/test/units/routing/endpoints.test.js
- packages/astro/test/units/runtime/endpoints.test.js
- packages/astro/test/units/config/format.test.js
- packages/astro/test/units/content-collections/frontmatter.test.js
- packages/astro/test/units/dev/head-injection.test.js
- packages/astro/test/units/render/head.test.js
- packages/astro/test/units/dev/hydration.test.js
- packages/astro/test/units/cli/index.test.js
- packages/astro/test/units/cli/info.test.js
- packages/astro/test/units/routing/manifest.test.js
- packages/astro/test/request-signal.test.js
- packages/astro/test/units/vite-plugin-astro-server/request.test.js
- packages/astro/test/units/vite-plugin-astro-server/response.test.js
- packages/astro/test/units/dev/restart.test.js
- packages/astro/test/units/routing/route-matching.test.js
- packages/astro/test/units/routing/route-sanitization.test.js
- packages/astro/test/units/routing/trailing-slash.test.js
Source
Frequently Asked Questions
What does test-utils.js do?
test-utils.js is a source file in the astro codebase, written in javascript. It belongs to the IntegrationAdapters domain, SsrAdapters subdomain.
What functions are defined in test-utils.js?
test-utils.js defines 7 function(s): buffersToString, createBasicPipeline, createBasicSettings, createFixture, createRequestAndResponse, runInContainer, toPromise.
What does test-utils.js depend on?
test-utils.js imports 14 module(s): ../../../dist/core/dev/container.js, ../../dist/core/client-directive/index.js, ../../dist/core/config/index.js, ../../dist/core/config/settings.js, ../../dist/core/logger/core.js, ../../dist/core/logger/node.js, ../../dist/core/middleware/noop-middleware.js, ../../dist/core/render/index.js, and 6 more.
What files import test-utils.js?
test-utils.js is imported by 26 file(s): api.test.js, base.test.js, chunk.test.js, client-address-node.test.js, components.test.js, core.test.js, create-key.test.js, dev.test.js, and 18 more.
Where is test-utils.js in the architecture?
test-utils.js is located at packages/astro/test/units/test-utils.js (domain: IntegrationAdapters, subdomain: SsrAdapters, directory: packages/astro/test/units).
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free