Home / File/ api.test.js — astro Source File

api.test.js — astro Source File

Architecture documentation for api.test.js, a javascript file in the astro codebase. 8 imports, 0 dependents.

Entity Profile

Dependency Diagram

graph LR
  4b8be464_d831_108d_feda_fc775be3a7ec["api.test.js"]
  ef828bc2_6464_34c9_4876_d267d5c784ec["../../../dist/integrations/features-validation.js"]
  4b8be464_d831_108d_feda_fc775be3a7ec --> ef828bc2_6464_34c9_4876_d267d5c784ec
  6b284d2d_6afc_776e_596c_20b6e6070629["../../../dist/integrations/hooks.js"]
  4b8be464_d831_108d_feda_fc775be3a7ec --> 6b284d2d_6afc_776e_596c_20b6e6070629
  b0be4d0c_86b6_a283_f2af_003189bfd572["test-utils.js"]
  4b8be464_d831_108d_feda_fc775be3a7ec --> b0be4d0c_86b6_a283_f2af_003189bfd572
  f0937d94_cf30_e0fa_fbd5_135f8c876f70["createFixture"]
  4b8be464_d831_108d_feda_fc775be3a7ec --> f0937d94_cf30_e0fa_fbd5_135f8c876f70
  f09af995_6d60_a9f3_bdf0_6ae561f198cb["runInContainer"]
  4b8be464_d831_108d_feda_fc775be3a7ec --> f09af995_6d60_a9f3_bdf0_6ae561f198cb
  db323e8c_04ef_9777_0487_224de5819a30["node:assert"]
  4b8be464_d831_108d_feda_fc775be3a7ec --> db323e8c_04ef_9777_0487_224de5819a30
  e1e2fac7_5a95_7a88_cb1e_0a3b91c4e607["strict"]
  4b8be464_d831_108d_feda_fc775be3a7ec --> e1e2fac7_5a95_7a88_cb1e_0a3b91c4e607
  6b0635f9_51ea_77aa_767b_7857878e98a6["node:test"]
  4b8be464_d831_108d_feda_fc775be3a7ec --> 6b0635f9_51ea_77aa_767b_7857878e98a6
  style 4b8be464_d831_108d_feda_fc775be3a7ec fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

import { deepEqual } from 'node:assert';
import * as assert from 'node:assert/strict';
import { describe, it } from 'node:test';
import { validateSupportedFeatures } from '../../../dist/integrations/features-validation.js';
import {
	normalizeCodegenDir,
	normalizeInjectedTypeFilename,
	runHookBuildSetup,
	runHookConfigSetup,
} from '../../../dist/integrations/hooks.js';
import { createFixture, defaultLogger, runInContainer } from '../test-utils.js';

const defaultConfig = {
	root: new URL('./', import.meta.url),
	srcDir: new URL('src/', import.meta.url),
	build: {},
	image: {
		remotePatterns: [],
	},
	outDir: new URL('./dist/', import.meta.url),
	publicDir: new URL('./public/', import.meta.url),
	experimental: {},
};
const dotAstroDir = new URL('./.astro/', defaultConfig.root);

describe('Integration API', () => {
	it('runHookBuildSetup should work', async () => {
		const updatedViteConfig = await runHookBuildSetup({
			config: {
				...defaultConfig,
				integrations: [
					{
						name: 'test',
						hooks: {
							'astro:build:setup'({ updateConfig }) {
								updateConfig({
									define: {
										foo: 'bar',
									},
								});
							},
						},
					},
				],
			},
			vite: {},
			logger: defaultLogger,
			pages: new Map(),
			target: 'server',
		});
		assert.equal(updatedViteConfig.hasOwnProperty('define'), true);
	});

	it('runHookBuildSetup should return updated config', async () => {
		let updatedInternalConfig;
		const updatedViteConfig = await runHookBuildSetup({
			config: {
				...defaultConfig,
				integrations: [
					{
// ... (501 more lines)

Dependencies

Frequently Asked Questions

What does api.test.js do?
api.test.js is a source file in the astro codebase, written in javascript. It belongs to the IntegrationAdapters domain.
What does api.test.js depend on?
api.test.js imports 8 module(s): ../../../dist/integrations/features-validation.js, ../../../dist/integrations/hooks.js, createFixture, node:assert, node:test, runInContainer, strict, test-utils.js.
Where is api.test.js in the architecture?
api.test.js is located at packages/astro/test/units/integrations/api.test.js (domain: IntegrationAdapters, directory: packages/astro/test/units/integrations).

Analyze Your Own Codebase

Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.

Try Supermodel Free