core.test.js — astro Source File
Architecture documentation for core.test.js, a javascript file in the astro codebase. 19 imports, 0 dependents.
Entity Profile
Dependency Diagram
graph LR ea0af6c5_d045_60b6_c577_5153cfcaa580["core.test.js"] e90bdc3a_92a6_a967_11f8_a684e9308361["../../../../dist/assets/fonts/core/collect-component-data.js"] ea0af6c5_d045_60b6_c577_5153cfcaa580 --> e90bdc3a_92a6_a967_11f8_a684e9308361 cecabc1c_fd4e_769a_e1f0_6e5ea96e2f41["../../../../dist/assets/fonts/core/collect-font-assets-from-faces.js"] ea0af6c5_d045_60b6_c577_5153cfcaa580 --> cecabc1c_fd4e_769a_e1f0_6e5ea96e2f41 baf309e7_9809_cc55_88c6_10366d139330["../../../../dist/assets/fonts/core/collect-font-data.js"] ea0af6c5_d045_60b6_c577_5153cfcaa580 --> baf309e7_9809_cc55_88c6_10366d139330 344273c3_88cd_079e_aa89_96414b550cca["../../../../dist/assets/fonts/core/compute-font-families-assets.js"] ea0af6c5_d045_60b6_c577_5153cfcaa580 --> 344273c3_88cd_079e_aa89_96414b550cca 13277805_8864_ff30_f876_008b680279ec["../../../../dist/assets/fonts/core/filter-and-transform-font-faces.js"] ea0af6c5_d045_60b6_c577_5153cfcaa580 --> 13277805_8864_ff30_f876_008b680279ec 6401aa23_0fb7_2fa6_2d15_b5891b37bfc4["../../../../dist/assets/fonts/core/filter-preloads.js"] ea0af6c5_d045_60b6_c577_5153cfcaa580 --> 6401aa23_0fb7_2fa6_2d15_b5891b37bfc4 9a2613e5_be43_dd9e_5050_b98e031f7929["../../../../dist/assets/fonts/core/get-or-create-font-family-assets.js"] ea0af6c5_d045_60b6_c577_5153cfcaa580 --> 9a2613e5_be43_dd9e_5050_b98e031f7929 cf8881e1_7feb_cad8_8756_08fd107d2b6a["../../../../dist/assets/fonts/core/optimize-fallbacks.js"] ea0af6c5_d045_60b6_c577_5153cfcaa580 --> cf8881e1_7feb_cad8_8756_08fd107d2b6a 4f990e99_aaa1_fa7e_f7dd_496bf9d09b24["../../../../dist/assets/fonts/core/resolve-family.js"] ea0af6c5_d045_60b6_c577_5153cfcaa580 --> 4f990e99_aaa1_fa7e_f7dd_496bf9d09b24 b0be4d0c_86b6_a283_f2af_003189bfd572["test-utils.js"] ea0af6c5_d045_60b6_c577_5153cfcaa580 --> b0be4d0c_86b6_a283_f2af_003189bfd572 e6d936de_adfc_6f29_c26b_58af0a66adc5["SpyLogger"] ea0af6c5_d045_60b6_c577_5153cfcaa580 --> e6d936de_adfc_6f29_c26b_58af0a66adc5 cf581885_d0e2_b165_a30e_db299dd301a8["utils.js"] ea0af6c5_d045_60b6_c577_5153cfcaa580 --> cf581885_d0e2_b165_a30e_db299dd301a8 05cf50ba_41ad_28ff_fdb7_d4b079acb4c0["FakeFontMetricsResolver"] ea0af6c5_d045_60b6_c577_5153cfcaa580 --> 05cf50ba_41ad_28ff_fdb7_d4b079acb4c0 ac3effe4_efb3_67b5_1b0c_04ce9111d92f["FakeHasher"] ea0af6c5_d045_60b6_c577_5153cfcaa580 --> ac3effe4_efb3_67b5_1b0c_04ce9111d92f style ea0af6c5_d045_60b6_c577_5153cfcaa580 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 { collectComponentData } from '../../../../dist/assets/fonts/core/collect-component-data.js';
import { collectFontAssetsFromFaces } from '../../../../dist/assets/fonts/core/collect-font-assets-from-faces.js';
import { collectFontData } from '../../../../dist/assets/fonts/core/collect-font-data.js';
import { computeFontFamiliesAssets } from '../../../../dist/assets/fonts/core/compute-font-families-assets.js';
import { filterAndTransformFontFaces } from '../../../../dist/assets/fonts/core/filter-and-transform-font-faces.js';
import { filterPreloads } from '../../../../dist/assets/fonts/core/filter-preloads.js';
import { getOrCreateFontFamilyAssets } from '../../../../dist/assets/fonts/core/get-or-create-font-family-assets.js';
import { optimizeFallbacks } from '../../../../dist/assets/fonts/core/optimize-fallbacks.js';
import { resolveFamily } from '../../../../dist/assets/fonts/core/resolve-family.js';
import { SpyLogger } from '../../test-utils.js';
import {
FakeFontMetricsResolver,
FakeHasher,
FakeStringMatcher,
markdownBold,
PassthroughFontResolver,
} from './utils.js';
describe('fonts core', () => {
describe('resolveFamily()', () => {
it('removes quotes correctly', () => {
const hasher = new FakeHasher('xxx');
let family = resolveFamily({
family: {
provider: { name: 'foo', resolveFont: () => undefined },
name: 'Test',
cssVariable: '--test',
},
hasher,
});
assert.equal(family.name, 'Test');
assert.equal(family.uniqueName, 'Test-xxx');
family = resolveFamily({
family: {
provider: { name: 'foo', resolveFont: () => undefined },
name: '"Foo bar"',
cssVariable: '--test',
},
hasher,
});
assert.equal(family.name, 'Foo bar');
assert.equal(family.uniqueName, 'Foo bar-xxx');
});
it('dedupes properly', () => {
const family = resolveFamily({
family: {
provider: {
name: 'xxx',
resolveFont: () => undefined,
},
name: '"Foo bar"',
cssVariable: '--test',
weights: [400, '400', '500', 'bold'],
styles: ['normal', 'normal', 'italic'],
subsets: ['latin', 'latin'],
// ... (1640 more lines)
Domain
Dependencies
- ../../../../dist/assets/fonts/core/collect-component-data.js
- ../../../../dist/assets/fonts/core/collect-font-assets-from-faces.js
- ../../../../dist/assets/fonts/core/collect-font-data.js
- ../../../../dist/assets/fonts/core/compute-font-families-assets.js
- ../../../../dist/assets/fonts/core/filter-and-transform-font-faces.js
- ../../../../dist/assets/fonts/core/filter-preloads.js
- ../../../../dist/assets/fonts/core/get-or-create-font-family-assets.js
- ../../../../dist/assets/fonts/core/optimize-fallbacks.js
- ../../../../dist/assets/fonts/core/resolve-family.js
- FakeFontMetricsResolver
- FakeHasher
- FakeStringMatcher
- PassthroughFontResolver
- SpyLogger
- markdownBold
- node:test
- strict
- test-utils.js
- utils.js
Source
Frequently Asked Questions
What does core.test.js do?
core.test.js is a source file in the astro codebase, written in javascript. It belongs to the IntegrationAdapters domain.
What does core.test.js depend on?
core.test.js imports 19 module(s): ../../../../dist/assets/fonts/core/collect-component-data.js, ../../../../dist/assets/fonts/core/collect-font-assets-from-faces.js, ../../../../dist/assets/fonts/core/collect-font-data.js, ../../../../dist/assets/fonts/core/compute-font-families-assets.js, ../../../../dist/assets/fonts/core/filter-and-transform-font-faces.js, ../../../../dist/assets/fonts/core/filter-preloads.js, ../../../../dist/assets/fonts/core/get-or-create-font-family-assets.js, ../../../../dist/assets/fonts/core/optimize-fallbacks.js, and 11 more.
Where is core.test.js in the architecture?
core.test.js is located at packages/astro/test/units/assets/fonts/core.test.js (domain: IntegrationAdapters, directory: packages/astro/test/units/assets/fonts).
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free