test: share generation live env helper

This commit is contained in:
Peter Steinberger
2026-04-21 00:21:45 +01:00
parent a95b61560a
commit da3f47ddd0
3 changed files with 21 additions and 35 deletions

View File

@@ -1,17 +1 @@
import { loadShellEnvFallback } from "../../src/infra/shell-env.js";
import { getProviderEnvVars } from "../../src/secrets/provider-env-vars.js";
export function maybeLoadShellEnvForGenerationProviders(providerIds: string[]): void {
const expectedKeys = [
...new Set(providerIds.flatMap((providerId) => getProviderEnvVars(providerId))),
];
if (expectedKeys.length === 0) {
return;
}
loadShellEnvFallback({
enabled: true,
env: process.env,
expectedKeys,
logger: { warn: (message: string) => console.warn(message) },
});
}
export { maybeLoadShellEnvForGenerationProviders } from "../../src/test-utils/generation-live-test-helpers.js";

View File

@@ -0,0 +1,17 @@
import { loadShellEnvFallback } from "../infra/shell-env.js";
import { getProviderEnvVars } from "../secrets/provider-env-vars.js";
export function maybeLoadShellEnvForGenerationProviders(providerIds: string[]): void {
const expectedKeys = [
...new Set(providerIds.flatMap((providerId) => getProviderEnvVars(providerId))),
];
if (expectedKeys.length === 0) {
return;
}
loadShellEnvFallback({
enabled: true,
env: process.env,
expectedKeys,
logger: { warn: (message: string) => console.warn(message) },
});
}

View File

@@ -14,9 +14,9 @@ import {
resolveLiveImageAuthStore,
} from "../src/image-generation/live-test-helpers.js";
import { isTruthyEnvValue } from "../src/infra/env.js";
import { getShellEnvAppliedKeys, loadShellEnvFallback } from "../src/infra/shell-env.js";
import { getShellEnvAppliedKeys } from "../src/infra/shell-env.js";
import { encodePngRgba, fillPixel } from "../src/media/png-encode.js";
import { getProviderEnvVars } from "../src/secrets/provider-env-vars.js";
import { maybeLoadShellEnvForGenerationProviders } from "../src/test-utils/generation-live-test-helpers.js";
import { loadBundledProviderPlugin as loadBundledProviderPluginFromTestHelper } from "./helpers/media-generation/bundled-provider-builders.js";
import {
registerProviderPlugin,
@@ -119,21 +119,6 @@ function withPluginsEnabled(cfg: OpenClawConfig): OpenClawConfig {
};
}
function maybeLoadShellEnvForImageProviders(providerIds: string[]): void {
const expectedKeys = [
...new Set(providerIds.flatMap((providerId) => getProviderEnvVars(providerId))),
];
if (expectedKeys.length === 0) {
return;
}
loadShellEnvFallback({
enabled: true,
env: process.env,
expectedKeys,
logger: { warn: (message: string) => console.warn(message) },
});
}
function resolveProviderModelForLiveTest(providerId: string, modelRef: string): string {
const slash = modelRef.indexOf("/");
if (slash <= 0 || slash === modelRef.length - 1) {
@@ -190,7 +175,7 @@ describeLive("image generation live (provider sweep)", () => {
const skipped: string[] = [];
const failures: string[] = [];
maybeLoadShellEnvForImageProviders(PROVIDER_CASES.map((entry) => entry.providerId));
maybeLoadShellEnvForGenerationProviders(PROVIDER_CASES.map((entry) => entry.providerId));
for (const providerCase of PROVIDER_CASES) {
const modelRef =