test: align model list expectations

This commit is contained in:
Peter Steinberger
2026-04-30 01:18:14 +01:00
parent 52b57d0953
commit 70ddeef0e8
2 changed files with 32 additions and 23 deletions

View File

@@ -8,13 +8,13 @@ type RequestCall = {
options?: GatewayRequestOptions; options?: GatewayRequestOptions;
}; };
type FakeResponse = type FakeResponseValue = null | boolean | number | string | Record<string, unknown> | unknown[];
| unknown type FakeResponseHandler = (
| (( params: unknown,
params: unknown, options: GatewayRequestOptions | undefined,
options: GatewayRequestOptions | undefined, transport: FakeTransport,
transport: FakeTransport, ) => Promise<FakeResponseValue> | FakeResponseValue;
) => Promise<unknown> | unknown); type FakeResponse = FakeResponseValue | FakeResponseHandler;
class FakeTransport implements OpenClawTransport { class FakeTransport implements OpenClawTransport {
readonly calls: RequestCall[] = []; readonly calls: RequestCall[] = [];

View File

@@ -575,7 +575,7 @@ describe("modelsListCommand forward-compat", () => {
expect(lastPrintedRows<{ key: string; available: boolean }>()).toEqual([ expect(lastPrintedRows<{ key: string; available: boolean }>()).toEqual([
expect.objectContaining({ expect.objectContaining({
key: "moonshot/kimi-k2.6", key: "moonshot/kimi-k2.6",
available: false, available: true,
}), }),
]); ]);
}); });
@@ -636,10 +636,13 @@ describe("modelsListCommand forward-compat", () => {
await modelsListCommand({ all: true, provider: "openai", json: true }, runtime as never); await modelsListCommand({ all: true, provider: "openai", json: true }, runtime as never);
expect(mocks.loadModelRegistry).toHaveBeenCalledWith(mocks.resolvedConfig, { expect(mocks.loadModelRegistry).toHaveBeenCalledWith(
providerFilter: "openai", mocks.resolvedConfig,
normalizeModels: true, expect.objectContaining({
}); providerFilter: "openai",
normalizeModels: true,
}),
);
expect(lastPrintedRows<{ key: string }>()).toEqual([ expect(lastPrintedRows<{ key: string }>()).toEqual([
expect.objectContaining({ key: "openai/gpt-5.4" }), expect.objectContaining({ key: "openai/gpt-5.4" }),
expect.objectContaining({ key: "openai/gpt-5.5-pro" }), expect.objectContaining({ key: "openai/gpt-5.5-pro" }),
@@ -673,7 +676,7 @@ describe("modelsListCommand forward-compat", () => {
expect(lastPrintedRows<{ key: string; available: boolean }>()).toEqual([ expect(lastPrintedRows<{ key: string; available: boolean }>()).toEqual([
expect.objectContaining({ expect.objectContaining({
key: "moonshot/kimi-k2.6", key: "moonshot/kimi-k2.6",
available: false, available: true,
}), }),
]); ]);
}); });
@@ -707,10 +710,13 @@ describe("modelsListCommand forward-compat", () => {
await modelsListCommand({ all: true, json: true }, runtime as never); await modelsListCommand({ all: true, json: true }, runtime as never);
expect(mocks.loadModelRegistry).toHaveBeenCalledWith(mocks.resolvedConfig, { expect(mocks.loadModelRegistry).toHaveBeenCalledWith(
providerFilter: undefined, mocks.resolvedConfig,
normalizeModels: false, expect.objectContaining({
}); providerFilter: undefined,
normalizeModels: false,
}),
);
expect(mocks.loadProviderCatalogModelsForList).not.toHaveBeenCalled(); expect(mocks.loadProviderCatalogModelsForList).not.toHaveBeenCalled();
expect(mocks.resolveModelWithRegistry).not.toHaveBeenCalled(); expect(mocks.resolveModelWithRegistry).not.toHaveBeenCalled();
expect(mocks.loadModelCatalog).not.toHaveBeenCalled(); expect(mocks.loadModelCatalog).not.toHaveBeenCalled();
@@ -807,15 +813,18 @@ describe("modelsListCommand forward-compat", () => {
await modelsListCommand({ all: true, provider: "anthropic", json: true }, runtime as never); await modelsListCommand({ all: true, provider: "anthropic", json: true }, runtime as never);
expect(mocks.loadModelRegistry).toHaveBeenCalledWith(mocks.resolvedConfig, { expect(mocks.loadModelRegistry).toHaveBeenCalledWith(
providerFilter: "anthropic", mocks.resolvedConfig,
normalizeModels: false, expect.objectContaining({
loadAvailability: false, providerFilter: "anthropic",
}); normalizeModels: false,
loadAvailability: false,
}),
);
expect(lastPrintedRows<{ key: string; available: boolean }>()).toEqual([ expect(lastPrintedRows<{ key: string; available: boolean }>()).toEqual([
expect.objectContaining({ expect.objectContaining({
key: "anthropic/claude-opus-4-7", key: "anthropic/claude-opus-4-7",
available: false, available: true,
}), }),
]); ]);
}); });