@@ -14,6 +14,7 @@ def td() -> TestData:
1414 .variations (
1515 {
1616 'model' : {'modelId' : 'fakeModel' , 'temperature' : 0.5 , 'maxTokens' : 4096 },
17+ 'provider' : {'id' : 'fakeProvider' },
1718 'messages' : [{'role' : 'system' , 'content' : 'Hello, {{name}}!' }],
1819 '_ldMeta' : {'enabled' : True , 'versionKey' : 'abcd' },
1920 },
@@ -161,6 +162,17 @@ def test_model_config_no_variables(ldai_client: LDAIClient, tracker):
161162 assert config .model .max_tokens == 4096
162163
163164
165+ def test_provider_config_handling (ldai_client : LDAIClient , tracker ):
166+ context = Context .builder ('user-key' ).name ("Sandy" ).build ()
167+ default_value = AIConfig (tracker = tracker , enabled = True , model = ModelConfig ('fake-model' ), messages = [])
168+ variables = {'name' : 'World' }
169+
170+ config = ldai_client .config ('model-config' , context , default_value , variables )
171+
172+ assert config .provider is not None
173+ assert config .provider .id == 'fakeProvider'
174+
175+
164176def test_context_interpolation (ldai_client : LDAIClient , tracker ):
165177 context = Context .builder ('user-key' ).name ("Sandy" ).build ()
166178 default_value = AIConfig (tracker = tracker , enabled = True , model = ModelConfig ('fake-model' ), messages = [])
@@ -225,6 +237,7 @@ def test_model_initial_config_disabled(ldai_client: LDAIClient, tracker):
225237 assert config .enabled is False
226238 assert config .model is None
227239 assert config .messages is None
240+ assert config .provider is None
228241
229242
230243def test_model_initial_config_enabled (ldai_client : LDAIClient , tracker ):
@@ -236,3 +249,4 @@ def test_model_initial_config_enabled(ldai_client: LDAIClient, tracker):
236249 assert config .enabled is True
237250 assert config .model is None
238251 assert config .messages is None
252+ assert config .provider is None
0 commit comments