info.test.js — astro Source File
Architecture documentation for info.test.js, a javascript file in the astro codebase. 21 imports, 0 dependents.
Entity Profile
Dependency Diagram
graph LR d2404ffb_8d8c_7a4d_ed8e_c7be3b51b00c["info.test.js"] 1f4164a2_9045_780b_d31d_bb77812727f1["../../../dist/cli/info/core/get-package-manager.js"] d2404ffb_8d8c_7a4d_ed8e_c7be3b51b00c --> 1f4164a2_9045_780b_d31d_bb77812727f1 82806e9d_e754_9ae4_6fe8_34d10ae65b7f["../../../dist/cli/info/core/info.js"] d2404ffb_8d8c_7a4d_ed8e_c7be3b51b00c --> 82806e9d_e754_9ae4_6fe8_34d10ae65b7f 7638e047_a728_6dfe_ec44_9fdfb2efbf4b["../../../dist/cli/info/infra/cli-clipboard.js"] d2404ffb_8d8c_7a4d_ed8e_c7be3b51b00c --> 7638e047_a728_6dfe_ec44_9fdfb2efbf4b 4279214e_4f85_13e4_265d_3dc1d3bd88a0["../../../dist/cli/info/infra/cli-debug-info-provider.js"] d2404ffb_8d8c_7a4d_ed8e_c7be3b51b00c --> 4279214e_4f85_13e4_265d_3dc1d3bd88a0 483078de_8a72_ed26_2da5_b91bece1ca8b["../../../dist/cli/info/infra/dev-debug-info-provider.js"] d2404ffb_8d8c_7a4d_ed8e_c7be3b51b00c --> 483078de_8a72_ed26_2da5_b91bece1ca8b 85c47ac3_dd3f_95bb_c963_50862bb082c3["../../../dist/cli/info/infra/process-node-version-provider.js"] d2404ffb_8d8c_7a4d_ed8e_c7be3b51b00c --> 85c47ac3_dd3f_95bb_c963_50862bb082c3 3f5d3ec4_d26a_a6e7_8720_6d1f5bed2ec4["../../../dist/cli/info/infra/process-package-manager-user-agent-provider.js"] d2404ffb_8d8c_7a4d_ed8e_c7be3b51b00c --> 3f5d3ec4_d26a_a6e7_8720_6d1f5bed2ec4 b0be4d0c_86b6_a283_f2af_003189bfd572["test-utils.js"] d2404ffb_8d8c_7a4d_ed8e_c7be3b51b00c --> b0be4d0c_86b6_a283_f2af_003189bfd572 e6d936de_adfc_6f29_c26b_58af0a66adc5["SpyLogger"] d2404ffb_8d8c_7a4d_ed8e_c7be3b51b00c --> e6d936de_adfc_6f29_c26b_58af0a66adc5 dc38b823_10e6_0080_9a8c_08dc7cc3e0eb["utils.js"] d2404ffb_8d8c_7a4d_ed8e_c7be3b51b00c --> dc38b823_10e6_0080_9a8c_08dc7cc3e0eb b1804279_9a3b_87e5_cf71_6df4888a386a["FakeAstroVersionProvider"] d2404ffb_8d8c_7a4d_ed8e_c7be3b51b00c --> b1804279_9a3b_87e5_cf71_6df4888a386a c7767a9d_667e_94e3_52ec_ac8fc4973e6a["FakeDebugInfoProvider"] d2404ffb_8d8c_7a4d_ed8e_c7be3b51b00c --> c7767a9d_667e_94e3_52ec_ac8fc4973e6a 66042c8b_a111_5aeb_3340_4098586f4028["FakeNodeVersionProvider"] d2404ffb_8d8c_7a4d_ed8e_c7be3b51b00c --> 66042c8b_a111_5aeb_3340_4098586f4028 4c44a7e7_d557_5a60_a2f4_42bf0e95a9b8["FakeOperatingSystemProvider"] d2404ffb_8d8c_7a4d_ed8e_c7be3b51b00c --> 4c44a7e7_d557_5a60_a2f4_42bf0e95a9b8 style d2404ffb_8d8c_7a4d_ed8e_c7be3b51b00c fill:#6366f1,stroke:#818cf8,color:#fff
Relationship Graph
Source Code
// @ts-check
import assert from 'node:assert/strict';
import { describe, it } from 'node:test';
import { getPackageManager } from '../../../dist/cli/info/core/get-package-manager.js';
import { infoCommand } from '../../../dist/cli/info/core/info.js';
import { CliClipboard } from '../../../dist/cli/info/infra/cli-clipboard.js';
import { CliDebugInfoProvider } from '../../../dist/cli/info/infra/cli-debug-info-provider.js';
import { DevDebugInfoProvider } from '../../../dist/cli/info/infra/dev-debug-info-provider.js';
import { ProcessNodeVersionProvider } from '../../../dist/cli/info/infra/process-node-version-provider.js';
import { ProcessPackageManagerUserAgentProvider } from '../../../dist/cli/info/infra/process-package-manager-user-agent-provider.js';
import { SpyLogger } from '../test-utils.js';
import {
FakeAstroVersionProvider,
FakeDebugInfoProvider,
FakeNodeVersionProvider,
FakeOperatingSystemProvider,
FakePackageManagerUserAgentProvider,
FakePrompt,
PassthroughCommandRunner,
SpyClipboard,
SpyCommandExecutor,
} from './utils.js';
describe('CLI info', () => {
describe('core', () => {
describe('infoCommand', () => {
it('logs pretty debug info', async () => {
const logger = new SpyLogger();
const runner = new PassthroughCommandRunner();
const debugInfoProvider = new FakeDebugInfoProvider([['foo', 'bar']]);
const clipboard = new SpyClipboard();
await runner.run(infoCommand, {
debugInfoProvider,
getDebugInfoFormatter: ({ pretty }) => ({
format: (debugInfo) => `${pretty}-${JSON.stringify(debugInfo)}`,
}),
clipboard,
logger,
});
assert.equal(logger.logs[0].type, 'info');
assert.equal(logger.logs[0].message, 'true-[["foo","bar"]]');
});
it('copies raw debug info', async () => {
const logger = new SpyLogger();
const runner = new PassthroughCommandRunner();
const debugInfoProvider = new FakeDebugInfoProvider([['foo', 'bar']]);
const clipboard = new SpyClipboard();
await runner.run(infoCommand, {
debugInfoProvider,
getDebugInfoFormatter: ({ pretty }) => ({
format: (debugInfo) => `${pretty}-${JSON.stringify(debugInfo)}`,
}),
clipboard,
logger,
});
// ... (530 more lines)
Domain
Dependencies
- ../../../dist/cli/info/core/get-package-manager.js
- ../../../dist/cli/info/core/info.js
- ../../../dist/cli/info/infra/cli-clipboard.js
- ../../../dist/cli/info/infra/cli-debug-info-provider.js
- ../../../dist/cli/info/infra/dev-debug-info-provider.js
- ../../../dist/cli/info/infra/process-node-version-provider.js
- ../../../dist/cli/info/infra/process-package-manager-user-agent-provider.js
- FakeAstroVersionProvider
- FakeDebugInfoProvider
- FakeNodeVersionProvider
- FakeOperatingSystemProvider
- FakePackageManagerUserAgentProvider
- FakePrompt
- PassthroughCommandRunner
- SpyClipboard
- SpyCommandExecutor
- SpyLogger
- node:test
- strict
- test-utils.js
- utils.js
Source
Frequently Asked Questions
What does info.test.js do?
info.test.js is a source file in the astro codebase, written in javascript. It belongs to the IntegrationAdapters domain.
What does info.test.js depend on?
info.test.js imports 21 module(s): ../../../dist/cli/info/core/get-package-manager.js, ../../../dist/cli/info/core/info.js, ../../../dist/cli/info/infra/cli-clipboard.js, ../../../dist/cli/info/infra/cli-debug-info-provider.js, ../../../dist/cli/info/infra/dev-debug-info-provider.js, ../../../dist/cli/info/infra/process-node-version-provider.js, ../../../dist/cli/info/infra/process-package-manager-user-agent-provider.js, FakeAstroVersionProvider, and 13 more.
Where is info.test.js in the architecture?
info.test.js is located at packages/astro/test/units/cli/info.test.js (domain: IntegrationAdapters, directory: packages/astro/test/units/cli).
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free