import { DEFAULT_SERVER_SETTINGS, ProviderDriverKind, ProviderInstanceId, type ProviderInstanceConfig,} from "@t3tools/contracts";import { describe, expect, it } from "vite-plus/test";import { buildProviderInstanceUpdatePatch, formatDiagnosticsDescription,} from "./SettingsPanels.logic"; describe("formatDiagnosticsDescription", () => { it("collapses trace and metric URLs that share the same OTEL base path", () => { expect( formatDiagnosticsDescription({ localTracingEnabled: true, otlpTracesEnabled: true, otlpTracesUrl: "http://localhost:4318/v1/traces", otlpMetricsEnabled: true, otlpMetricsUrl: "http://localhost:4318/v1/metrics", }), ).toBe("Local trace file. Exporting OTEL to http://localhost:4318/v1/{traces,metrics}."); }); it("keeps separate trace and metric URLs when their base paths differ", () => { expect( formatDiagnosticsDescription({ localTracingEnabled: true, otlpTracesEnabled: true, otlpTracesUrl: "http://localhost:4318/v1/traces", otlpMetricsEnabled: true, otlpMetricsUrl: "http://localhost:9000/v1/metrics", }), ).toBe( "Local trace file. Exporting OTEL traces to http://localhost:4318/v1/traces and metrics to http://localhost:9000/v1/metrics.", ); }); it("omits OTEL text when no exporter is enabled", () => { expect( formatDiagnosticsDescription({ localTracingEnabled: true, otlpTracesEnabled: false, otlpMetricsEnabled: false, }), ).toBe("Local trace file."); });}); describe("buildProviderInstanceUpdatePatch", () => { it("promotes an edited default provider into providerInstances and resets the legacy provider", () => { const instanceId = ProviderInstanceId.make("codex"); const nextInstance = { driver: ProviderDriverKind.make("codex"), enabled: true, config: { binaryPath: "/opt/t3/codex", }, } satisfies ProviderInstanceConfig; const patch = buildProviderInstanceUpdatePatch({ settings: { ...DEFAULT_SERVER_SETTINGS, providers: { ...DEFAULT_SERVER_SETTINGS.providers, codex: { ...DEFAULT_SERVER_SETTINGS.providers.codex, binaryPath: "/legacy/codex", }, }, }, instanceId, instance: nextInstance, driver: ProviderDriverKind.make("codex"), isDefault: true, }); expect(patch.providerInstances?.[instanceId]).toEqual(nextInstance); expect(patch.providers?.codex).toEqual(DEFAULT_SERVER_SETTINGS.providers.codex); }); it("updates custom instances without touching legacy provider settings", () => { const instanceId = ProviderInstanceId.make("codex_personal"); const nextInstance = { driver: ProviderDriverKind.make("codex"), enabled: true, config: { homePath: "/Users/example/.codex-personal", }, } satisfies ProviderInstanceConfig; const patch = buildProviderInstanceUpdatePatch({ settings: DEFAULT_SERVER_SETTINGS, instanceId, instance: nextInstance, driver: ProviderDriverKind.make("codex"), isDefault: false, }); expect(patch.providerInstances?.[instanceId]).toEqual(nextInstance); expect(patch.providers).toBeUndefined(); });});
import {
DEFAULT_SERVER_SETTINGS,
ProviderDriverKind,
ProviderInstanceId,
type ProviderInstanceConfig,
} from "@t3tools/contracts";
import { describe, expect, it } from "vite-plus/test";
import {
buildProviderInstanceUpdatePatch,
formatDiagnosticsDescription,
} from "./SettingsPanels.logic";
describe("formatDiagnosticsDescription", () => {
it("collapses trace and metric URLs that share the same OTEL base path", () => {
expect(
formatDiagnosticsDescription({
localTracingEnabled: true,
otlpTracesEnabled: true,
otlpTracesUrl: "http://localhost:4318/v1/traces",
otlpMetricsEnabled: true,
otlpMetricsUrl: "http://localhost:4318/v1/metrics",
}),
).toBe("Local trace file. Exporting OTEL to http://localhost:4318/v1/{traces,metrics}.");
});
it("keeps separate trace and metric URLs when their base paths differ", () => {
expect(
formatDiagnosticsDescription({
localTracingEnabled: true,
otlpTracesEnabled: true,
otlpTracesUrl: "http://localhost:4318/v1/traces",
otlpMetricsEnabled: true,
otlpMetricsUrl: "http://localhost:9000/v1/metrics",
}),
).toBe(
"Local trace file. Exporting OTEL traces to http://localhost:4318/v1/traces and metrics to http://localhost:9000/v1/metrics.",
);
});
it("omits OTEL text when no exporter is enabled", () => {
expect(
formatDiagnosticsDescription({
localTracingEnabled: true,
otlpTracesEnabled: false,
otlpMetricsEnabled: false,
}),
).toBe("Local trace file.");
});
});
describe("buildProviderInstanceUpdatePatch", () => {
it("promotes an edited default provider into providerInstances and resets the legacy provider", () => {
const instanceId = ProviderInstanceId.make("codex");
const nextInstance = {
driver: ProviderDriverKind.make("codex"),
enabled: true,
config: {
binaryPath: "/opt/t3/codex",
},
} satisfies ProviderInstanceConfig;
const patch = buildProviderInstanceUpdatePatch({
settings: {
...DEFAULT_SERVER_SETTINGS,
providers: {
...DEFAULT_SERVER_SETTINGS.providers,
codex: {
...DEFAULT_SERVER_SETTINGS.providers.codex,
binaryPath: "/legacy/codex",
},
},
},
instanceId,
instance: nextInstance,
driver: ProviderDriverKind.make("codex"),
isDefault: true,
});
expect(patch.providerInstances?.[instanceId]).toEqual(nextInstance);
expect(patch.providers?.codex).toEqual(DEFAULT_SERVER_SETTINGS.providers.codex);
});
it("updates custom instances without touching legacy provider settings", () => {
const instanceId = ProviderInstanceId.make("codex_personal");
const nextInstance = {
driver: ProviderDriverKind.make("codex"),
enabled: true,
config: {
homePath: "/Users/example/.codex-personal",
},
} satisfies ProviderInstanceConfig;
const patch = buildProviderInstanceUpdatePatch({
settings: DEFAULT_SERVER_SETTINGS,
instanceId,
instance: nextInstance,
driver: ProviderDriverKind.make("codex"),
isDefault: false,
});
expect(patch.providerInstances?.[instanceId]).toEqual(nextInstance);
expect(patch.providers).toBeUndefined();
});
});