mirror of
https://github.com/openclaw/openclaw.git
synced 2026-04-21 22:21:33 +00:00
test: dedupe plugin provider helper suites
This commit is contained in:
@@ -94,6 +94,32 @@ function createWizardRuntimeParams(params?: {
|
||||
};
|
||||
}
|
||||
|
||||
function expectWizardResolutionCount(params: {
|
||||
provider: ProviderPlugin;
|
||||
config?: object;
|
||||
env?: NodeJS.ProcessEnv;
|
||||
expectedCount: number;
|
||||
}) {
|
||||
setResolvedProviders(params.provider);
|
||||
resolveProviderWizardOptions(
|
||||
createWizardRuntimeParams({
|
||||
config: params.config,
|
||||
env: params.env,
|
||||
}),
|
||||
);
|
||||
resolveProviderWizardOptions(
|
||||
createWizardRuntimeParams({
|
||||
config: params.config,
|
||||
env: params.env,
|
||||
}),
|
||||
);
|
||||
expectProviderResolutionCall({
|
||||
config: params.config,
|
||||
env: params.env,
|
||||
count: params.expectedCount,
|
||||
});
|
||||
}
|
||||
|
||||
function expectProviderResolutionCall(params?: {
|
||||
config?: object;
|
||||
env?: NodeJS.ProcessEnv;
|
||||
@@ -112,21 +138,6 @@ function setResolvedProviders(...providers: ProviderPlugin[]) {
|
||||
resolvePluginProviders.mockReturnValue(providers);
|
||||
}
|
||||
|
||||
function resolveWizardOptionsTwice(params: {
|
||||
config?: object;
|
||||
env: NodeJS.ProcessEnv;
|
||||
workspaceDir?: string;
|
||||
}) {
|
||||
const runtimeParams = createWizardRuntimeParams(params);
|
||||
resolveProviderWizardOptions(runtimeParams);
|
||||
resolveProviderWizardOptions(runtimeParams);
|
||||
}
|
||||
|
||||
function expectWizardProviderCacheMiss(params: { config?: object; env: NodeJS.ProcessEnv }) {
|
||||
resolveWizardOptionsTwice(params);
|
||||
expectProviderResolutionCall({ ...params, count: 2 });
|
||||
}
|
||||
|
||||
function expectSingleWizardChoice(params: {
|
||||
provider: ProviderPlugin;
|
||||
choice: string;
|
||||
@@ -363,11 +374,12 @@ describe("provider wizard boundaries", () => {
|
||||
}),
|
||||
},
|
||||
] as const)("$name", ({ env }) => {
|
||||
const provider = createSglangSetupProvider();
|
||||
const config = createSglangConfig();
|
||||
setResolvedProviders(provider);
|
||||
|
||||
expectWizardProviderCacheMiss({ config, env });
|
||||
expectWizardResolutionCount({
|
||||
provider: createSglangSetupProvider(),
|
||||
config: createSglangConfig(),
|
||||
env,
|
||||
expectedCount: 2,
|
||||
});
|
||||
});
|
||||
|
||||
it("expires provider-wizard memoization after the shortest plugin cache ttl", () => {
|
||||
|
||||
Reference in New Issue
Block a user