@@ -9,6 +9,17 @@ import { Provider } from "../../src/provider/provider"
99import { Env } from "../../src/env"
1010import { Global } from "../../src/global"
1111import { Filesystem } from "../../src/util/filesystem"
12+ import { Effect } from "effect"
13+ import { AppRuntime } from "../../src/effect/app-runtime"
14+
15+ async function list ( ) {
16+ return AppRuntime . runPromise (
17+ Effect . gen ( function * ( ) {
18+ const provider = yield * Provider . Service
19+ return yield * provider . list ( )
20+ } ) ,
21+ )
22+ }
1223
1324test ( "Bedrock: config region takes precedence over AWS_REGION env var" , async ( ) => {
1425 await using tmp = await tmpdir ( {
@@ -35,7 +46,7 @@ test("Bedrock: config region takes precedence over AWS_REGION env var", async ()
3546 Env . set ( "AWS_PROFILE" , "default" )
3647 } ,
3748 fn : async ( ) => {
38- const providers = await Provider . list ( )
49+ const providers = await list ( )
3950 expect ( providers [ ProviderID . amazonBedrock ] ) . toBeDefined ( )
4051 expect ( providers [ ProviderID . amazonBedrock ] . options ?. region ) . toBe ( "eu-west-1" )
4152 } ,
@@ -60,7 +71,7 @@ test("Bedrock: falls back to AWS_REGION env var when no config region", async ()
6071 Env . set ( "AWS_PROFILE" , "default" )
6172 } ,
6273 fn : async ( ) => {
63- const providers = await Provider . list ( )
74+ const providers = await list ( )
6475 expect ( providers [ ProviderID . amazonBedrock ] ) . toBeDefined ( )
6576 expect ( providers [ ProviderID . amazonBedrock ] . options ?. region ) . toBe ( "eu-west-1" )
6677 } ,
@@ -116,7 +127,7 @@ test("Bedrock: loads when bearer token from auth.json is present", async () => {
116127 Env . set ( "AWS_BEARER_TOKEN_BEDROCK" , "" )
117128 } ,
118129 fn : async ( ) => {
119- const providers = await Provider . list ( )
130+ const providers = await list ( )
120131 expect ( providers [ ProviderID . amazonBedrock ] ) . toBeDefined ( )
121132 expect ( providers [ ProviderID . amazonBedrock ] . options ?. region ) . toBe ( "eu-west-1" )
122133 } ,
@@ -161,7 +172,7 @@ test("Bedrock: config profile takes precedence over AWS_PROFILE env var", async
161172 Env . set ( "AWS_ACCESS_KEY_ID" , "test-key-id" )
162173 } ,
163174 fn : async ( ) => {
164- const providers = await Provider . list ( )
175+ const providers = await list ( )
165176 expect ( providers [ ProviderID . amazonBedrock ] ) . toBeDefined ( )
166177 expect ( providers [ ProviderID . amazonBedrock ] . options ?. region ) . toBe ( "us-east-1" )
167178 } ,
@@ -192,7 +203,7 @@ test("Bedrock: includes custom endpoint in options when specified", async () =>
192203 Env . set ( "AWS_PROFILE" , "default" )
193204 } ,
194205 fn : async ( ) => {
195- const providers = await Provider . list ( )
206+ const providers = await list ( )
196207 expect ( providers [ ProviderID . amazonBedrock ] ) . toBeDefined ( )
197208 expect ( providers [ ProviderID . amazonBedrock ] . options ?. endpoint ) . toBe (
198209 "https://bedrock-runtime.us-east-1.vpce-xxxxx.amazonaws.com" ,
@@ -228,7 +239,7 @@ test("Bedrock: autoloads when AWS_WEB_IDENTITY_TOKEN_FILE is present", async ()
228239 Env . set ( "AWS_ACCESS_KEY_ID" , "" )
229240 } ,
230241 fn : async ( ) => {
231- const providers = await Provider . list ( )
242+ const providers = await list ( )
232243 expect ( providers [ ProviderID . amazonBedrock ] ) . toBeDefined ( )
233244 expect ( providers [ ProviderID . amazonBedrock ] . options ?. region ) . toBe ( "us-east-1" )
234245 } ,
@@ -268,7 +279,7 @@ test("Bedrock: model with us. prefix should not be double-prefixed", async () =>
268279 Env . set ( "AWS_PROFILE" , "default" )
269280 } ,
270281 fn : async ( ) => {
271- const providers = await Provider . list ( )
282+ const providers = await list ( )
272283 expect ( providers [ ProviderID . amazonBedrock ] ) . toBeDefined ( )
273284 // The model should exist with the us. prefix
274285 expect ( providers [ ProviderID . amazonBedrock ] . models [ "us.anthropic.claude-opus-4-5-20251101-v1:0" ] ) . toBeDefined ( )
@@ -305,7 +316,7 @@ test("Bedrock: model with global. prefix should not be prefixed", async () => {
305316 Env . set ( "AWS_PROFILE" , "default" )
306317 } ,
307318 fn : async ( ) => {
308- const providers = await Provider . list ( )
319+ const providers = await list ( )
309320 expect ( providers [ ProviderID . amazonBedrock ] ) . toBeDefined ( )
310321 expect ( providers [ ProviderID . amazonBedrock ] . models [ "global.anthropic.claude-opus-4-5-20251101-v1:0" ] ) . toBeDefined ( )
311322 } ,
@@ -341,7 +352,7 @@ test("Bedrock: model with eu. prefix should not be double-prefixed", async () =>
341352 Env . set ( "AWS_PROFILE" , "default" )
342353 } ,
343354 fn : async ( ) => {
344- const providers = await Provider . list ( )
355+ const providers = await list ( )
345356 expect ( providers [ ProviderID . amazonBedrock ] ) . toBeDefined ( )
346357 expect ( providers [ ProviderID . amazonBedrock ] . models [ "eu.anthropic.claude-opus-4-5-20251101-v1:0" ] ) . toBeDefined ( )
347358 } ,
@@ -377,7 +388,7 @@ test("Bedrock: model without prefix in US region should get us. prefix added", a
377388 Env . set ( "AWS_PROFILE" , "default" )
378389 } ,
379390 fn : async ( ) => {
380- const providers = await Provider . list ( )
391+ const providers = await list ( )
381392 expect ( providers [ ProviderID . amazonBedrock ] ) . toBeDefined ( )
382393 // Non-prefixed model should still be registered
383394 expect ( providers [ ProviderID . amazonBedrock ] . models [ "anthropic.claude-opus-4-5-20251101-v1:0" ] ) . toBeDefined ( )
0 commit comments