MCPcopy
hub / github.com/openai/openai-python / test_copy_default_query

Method test_copy_default_query

tests/test_client.py:214–254  ·  tests/test_client.py::TestOpenAI.test_copy_default_query
(self)

Source from the content-addressed store, hash-verified

212 client.close()
213
214 def test_copy_default_query(self) -> None:
215 client = OpenAI(
216 base_url=base_url,
217 api_key=api_key,
218 admin_api_key=admin_api_key,
219 _strict_response_validation=True,
220 default_query={class="st">"foo": class="st">"bar"},
221 )
222 assert _get_params(client)[class="st">"foo"] == class="st">"bar"
223
224 class="cm"># does not override the already given value when not specified
225 copied = client.copy()
226 assert _get_params(copied)[class="st">"foo"] == class="st">"bar"
227
228 class="cm"># merges already given params
229 copied = client.copy(default_query={class="st">"bar": class="st">"stainless"})
230 params = _get_params(copied)
231 assert params[class="st">"foo"] == class="st">"bar"
232 assert params[class="st">"bar"] == class="st">"stainless"
233
234 class="cm"># uses new values for any already given headers
235 copied = client.copy(default_query={class="st">"foo": class="st">"stainless"})
236 assert _get_params(copied)[class="st">"foo"] == class="st">"stainless"
237
238 class="cm"># set_default_query
239
240 class="cm"># completely overrides already set values
241 copied = client.copy(set_default_query={})
242 assert _get_params(copied) == {}
243
244 copied = client.copy(set_default_query={class="st">"bar": class="st">"Robert"})
245 assert _get_params(copied)[class="st">"bar"] == class="st">"Robert"
246
247 with pytest.raises(
248 ValueError,
249 class="cm"># TODO: update
250 match=class="st">"`default_query` and `set_default_query` arguments are mutually exclusive",
251 ):
252 client.copy(set_default_query={}, default_query={class="st">"foo": class="st">"Bar"})
253
254 client.close()
255
256 def test_copy_signature(self, client: OpenAI) -> None:
257 class="cm"># ensure the same parameters that can be passed to the client are defined in the `.copy()` method

Callers

nothing calls this directly

Calls 4

copyMethod · 0.95
OpenAIClass · 0.90
_get_paramsFunction · 0.85
closeMethod · 0.45

Tested by

no test coverage detected