fix(ci): await async provider test registration

This commit is contained in:
Peter Steinberger
2026-04-04 09:28:34 +01:00
parent 4812b9d2e2
commit f4855baf35
20 changed files with 116 additions and 110 deletions

View File

@@ -170,7 +170,7 @@ export function describeOpenAICodexProviderAuthContract() {
const { default: openAIPlugin } = await importBundledProviderPlugin<{
default: Parameters<typeof registerProviders>[0];
}>(providerAuthContractModules.openAIIndexModuleUrl);
const provider = requireProvider(registerProviders(openAIPlugin), "openai-codex");
const provider = requireProvider(await registerProviders(openAIPlugin), "openai-codex");
loginOpenAICodexOAuthMock.mockResolvedValueOnce({
refresh: "refresh-token",
access: params.access,
@@ -191,7 +191,7 @@ export function describeOpenAICodexProviderAuthContract() {
const { default: openAIPlugin } = await importBundledProviderPlugin<{
default: Parameters<typeof registerProviders>[0];
}>(providerAuthContractModules.openAIIndexModuleUrl);
return requireProvider(registerProviders(openAIPlugin), "openai-codex");
return requireProvider(await registerProviders(openAIPlugin), "openai-codex");
}
it("keeps OAuth auth results provider-owned", async () => {
@@ -323,7 +323,7 @@ export function describeGithubCopilotProviderAuthContract() {
const { default: githubCopilotPlugin } = await importBundledProviderPlugin<{
default: Parameters<typeof registerProviders>[0];
}>(providerAuthContractModules.githubCopilotIndexModuleUrl);
return requireProvider(registerProviders(githubCopilotPlugin), "github-copilot");
return requireProvider(await registerProviders(githubCopilotPlugin), "github-copilot");
}
it("keeps device auth results provider-owned", async () => {

View File

@@ -217,24 +217,22 @@ function installDiscoveryHooks(state: DiscoveryState) {
default: Parameters<typeof registerProviders>[0];
}>(bundledProviderModules.cloudflareAiGatewayIndexModuleUrl),
]);
state.githubCopilotProvider = requireProvider(
registerProviders(githubCopilotPlugin),
"github-copilot",
);
state.ollamaProvider = requireProvider(registerProviders(ollamaPlugin), "ollama");
state.vllmProvider = requireProvider(registerProviders(vllmPlugin), "vllm");
state.sglangProvider = requireProvider(registerProviders(sglangPlugin), "sglang");
state.minimaxProvider = requireProvider(registerProviders(minimaxPlugin), "minimax");
state.minimaxPortalProvider = requireProvider(
registerProviders(minimaxPlugin),
"minimax-portal",
);
state.modelStudioProvider = requireProvider(
registerProviders(modelStudioPlugin),
"modelstudio",
);
const githubCopilotProviders = await registerProviders(githubCopilotPlugin);
const ollamaProviders = await registerProviders(ollamaPlugin);
const vllmProviders = await registerProviders(vllmPlugin);
const sglangProviders = await registerProviders(sglangPlugin);
const minimaxProviders = await registerProviders(minimaxPlugin);
const modelStudioProviders = await registerProviders(modelStudioPlugin);
const cloudflareAiGatewayProviders = await registerProviders(cloudflareAiGatewayPlugin);
state.githubCopilotProvider = requireProvider(githubCopilotProviders, "github-copilot");
state.ollamaProvider = requireProvider(ollamaProviders, "ollama");
state.vllmProvider = requireProvider(vllmProviders, "vllm");
state.sglangProvider = requireProvider(sglangProviders, "sglang");
state.minimaxProvider = requireProvider(minimaxProviders, "minimax");
state.minimaxPortalProvider = requireProvider(minimaxProviders, "minimax-portal");
state.modelStudioProvider = requireProvider(modelStudioProviders, "modelstudio");
state.cloudflareAiGatewayProvider = requireProvider(
registerProviders(cloudflareAiGatewayPlugin),
cloudflareAiGatewayProviders,
"cloudflare-ai-gateway",
);
setRuntimeAuthStore();

View File

@@ -14,20 +14,20 @@ type RegisteredProviderCollections = {
};
type ProviderPluginModule = {
register(api: ReturnType<typeof createTestPluginApi>): void;
register(api: ReturnType<typeof createTestPluginApi>): void | Promise<void>;
};
export function registerProviderPlugin(params: {
export async function registerProviderPlugin(params: {
plugin: ProviderPluginModule;
id: string;
name: string;
}): RegisteredProviderCollections {
}): Promise<RegisteredProviderCollections> {
const providers: ProviderPlugin[] = [];
const speechProviders: SpeechProviderPlugin[] = [];
const mediaProviders: MediaUnderstandingProviderPlugin[] = [];
const imageProviders: ImageGenerationProviderPlugin[] = [];
params.plugin.register(
await params.plugin.register(
createTestPluginApi({
id: params.id,
name: params.name,

View File

@@ -173,11 +173,13 @@ function installRuntimeHooks() {
const plugin = await fixture.load();
return {
fixture,
providers: registerProviderPlugin({
plugin: plugin.default,
id: fixture.pluginId,
name: fixture.name,
}).providers,
providers: (
await registerProviderPlugin({
plugin: plugin.default,
id: fixture.pluginId,
name: fixture.name,
})
).providers,
};
}),
);