feat: allow production provider bootstrap

This commit is contained in:
inman committed 2026-08-18 00:36:05 +08:00
1 parent 6480e503eb
commit 22fc7a56d8
21 files changed
+192 -18

No files matched your search

+17
View File
@@ -40,6 +40,23 @@ func TestProviderJobBuilderPreparesImageRequestAndEngineOverride(t *testing.T) {
}
}
func TestProviderJobBuilderRejectsUnconfiguredProviderBeforeCreation(t *testing.T) {
b := testProviderBuilder()
b.UnavailableProviders = map[string]string{
"evolink": "EvoLink 服务商未配置,请先配置 EVOLINK_API_KEY。",
}
_, err := b.Build(context.Background(), "owner", "client", "image.generate", "idem", map[string]any{
"engine": "evolink", "prompt": "hello",
})
if err == nil || err.Error() != "EvoLink 服务商未配置,请先配置 EVOLINK_API_KEY。" {
t.Fatalf("error = %v", err)
}
var unavailable *Error
if !errors.As(err, &unavailable) || unavailable.Kind != ErrorUnavailable || unavailable.Status != 503 {
t.Fatalf("error = %#v, want unavailable 503", err)
}
}
func TestProviderJobBuilderUsesPublicInputURLsForImageMaterialCoverage(t *testing.T) {
b := testProviderBuilder()
cmd, err := b.Build(context.Background(), "owner", "client", "image.generate", "", map[string]any{