resolver.test.ts — ui Source File
Architecture documentation for resolver.test.ts, a typescript file in the ui codebase. 13 imports, 0 dependents.
Entity Profile
Dependency Diagram
graph LR 9a2ee0f9_d989_1165_589f_f10c64d3de86["resolver.test.ts"] 36b31cf1_05ba_97d7_e250_f336253a3080["registry.ts"] 9a2ee0f9_d989_1165_589f_f10c64d3de86 --> 36b31cf1_05ba_97d7_e250_f336253a3080 a0458d14_2934_bf61_05f7_fa8e1ffcf6c9["createRegistryServer"] 9a2ee0f9_d989_1165_589f_f10c64d3de86 --> a0458d14_2934_bf61_05f7_fa8e1ffcf6c9 9c06945e_ff8c_6208_b456_06ff9c3a854a["context.ts"] 9a2ee0f9_d989_1165_589f_f10c64d3de86 --> 9c06945e_ff8c_6208_b456_06ff9c3a854a 5dbaf813_1bb5_918b_cbff_aa7c04206f7b["setRegistryHeaders"] 9a2ee0f9_d989_1165_589f_f10c64d3de86 --> 5dbaf813_1bb5_918b_cbff_aa7c04206f7b c819bacb_5122_731b_64d6_d23131b1f806["resolver.ts"] 9a2ee0f9_d989_1165_589f_f10c64d3de86 --> c819bacb_5122_731b_64d6_d23131b1f806 a58cd53f_1cbe_da72_d846_9463c4f0a106["resolveRegistryItemsFromRegistries"] 9a2ee0f9_d989_1165_589f_f10c64d3de86 --> a58cd53f_1cbe_da72_d846_9463c4f0a106 e645527e_af9e_1457_dc85_48f0a4c79a9a["resolveRegistryTree"] 9a2ee0f9_d989_1165_589f_f10c64d3de86 --> e645527e_af9e_1457_dc85_48f0a4c79a9a eac8f98f_e40a_7fe8_f505_372c83d20c7a["fs"] 9a2ee0f9_d989_1165_589f_f10c64d3de86 --> eac8f98f_e40a_7fe8_f505_372c83d20c7a b80715bf_43eb_b495_f2cf_a439c5eb0e34["os"] 9a2ee0f9_d989_1165_589f_f10c64d3de86 --> b80715bf_43eb_b495_f2cf_a439c5eb0e34 d05ec4ea_7a68_3a36_bfa4_9ba7f8409ee5["path"] 9a2ee0f9_d989_1165_589f_f10c64d3de86 --> d05ec4ea_7a68_3a36_bfa4_9ba7f8409ee5 27f2e161_02ba_b306_ebb2_2005f19d5e8f["msw"] 9a2ee0f9_d989_1165_589f_f10c64d3de86 --> 27f2e161_02ba_b306_ebb2_2005f19d5e8f 3d9aab46_cc72_0f62_69b5_c62f35b9b7eb["node"] 9a2ee0f9_d989_1165_589f_f10c64d3de86 --> 3d9aab46_cc72_0f62_69b5_c62f35b9b7eb c8d55bee_7008_1e1f_317b_8dc47b31b6a8["vitest"] 9a2ee0f9_d989_1165_589f_f10c64d3de86 --> c8d55bee_7008_1e1f_317b_8dc47b31b6a8 style 9a2ee0f9_d989_1165_589f_f10c64d3de86 fill:#6366f1,stroke:#818cf8,color:#fff
Relationship Graph
Source Code
/* eslint-disable turbo/no-undeclared-env-vars */
import { promises as fs } from "fs"
import { tmpdir } from "os"
import path from "path"
import { HttpResponse, http } from "msw"
import { setupServer } from "msw/node"
import {
afterAll,
beforeAll,
beforeEach,
describe,
expect,
it,
test,
vi,
} from "vitest"
import { createRegistryServer } from "../../../tests/src/utils/registry"
import { setRegistryHeaders } from "./context"
import {
resolveRegistryItemsFromRegistries,
resolveRegistryTree,
} from "./resolver"
vi.mock("./context", () => ({
setRegistryHeaders: vi.fn(),
clearRegistryContext: vi.fn(),
getRegistryHeadersFromContext: vi.fn(() => ({})),
}))
vi.mock("@/src/utils/handle-error", () => ({
handleError: vi.fn((error) => {
console.error("Test error:", error)
}),
}))
vi.mock("@/src/utils/logger", () => ({
logger: {
error: vi.fn(),
break: vi.fn(),
log: vi.fn(),
},
}))
// Note: Individual tests will create their own MSW servers using createRegistryServer
describe("resolveRegistryItemsFromRegistries", () => {
beforeEach(() => {
vi.clearAllMocks()
})
it("should return empty array for empty input", () => {
const result = resolveRegistryItemsFromRegistries([], {
registries: {},
} as any)
expect(result).toEqual([])
expect(setRegistryHeaders).toHaveBeenCalledWith({})
})
it("should return empty array for empty input with no registries", () => {
// ... (2344 more lines)
Domain
Dependencies
Source
Frequently Asked Questions
What does resolver.test.ts do?
resolver.test.ts is a source file in the ui codebase, written in typescript. It belongs to the FrameworkTooling domain.
What does resolver.test.ts depend on?
resolver.test.ts imports 13 module(s): context.ts, createRegistryServer, fs, msw, node, os, path, registry.ts, and 5 more.
Where is resolver.test.ts in the architecture?
resolver.test.ts is located at packages/shadcn/src/registry/resolver.test.ts (domain: FrameworkTooling, directory: packages/shadcn/src/registry).
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free