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

Method test_validate_headers

tests/test_client.py:448–524  ·  view source on GitHub ↗
(self)

Source from the content-addressed store, hash-verified

446 test_client2.close()
447
448 def test_validate_headers(self) -> None:
449 client = OpenAI(
450 base_url=base_url, api_key=api_key, admin_api_key=admin_api_key, _strict_response_validation=True
451 )
452 options = client._prepare_options(FinalRequestOptions(method="get", url="/foo"))
453 request = client._build_request(options)
454
455 assert request.headers.get("Authorization") == f"Bearer {api_key}"
456
457 admin_request = client._build_request(
458 FinalRequestOptions(
459 method="get",
460 url="/organization/projects",
461 security={"admin_api_key_auth": True},
462 )
463 )
464 assert admin_request.headers.get("Authorization") == f"Bearer {admin_api_key}"
465
466 with update_env(**{"OPENAI_API_KEY": Omit()}):
467 admin_only = OpenAI(
468 base_url=base_url,
469 api_key=None,
470 admin_api_key=admin_api_key,
471 _strict_response_validation=True,
472 )
473 admin_only_request = admin_only._build_request(
474 FinalRequestOptions(
475 method="get",
476 url="/organization/projects",
477 security={"admin_api_key_auth": True},
478 )
479 )
480 assert admin_only_request.headers.get("Authorization") == f"Bearer {admin_api_key}"
481
482 with pytest.raises(
483 TypeError,
484 match="Could not resolve authentication method",
485 ):
486 admin_only._build_request(
487 FinalRequestOptions(
488 method="post",
489 url="/responses",
490 security={"bearer_auth": True},
491 )
492 )
493
494 with update_env(
495 **{
496 "OPENAI_API_KEY": Omit(),
497 "OPENAI_ADMIN_KEY": Omit(),
498 }
499 ):
500 no_credentials = OpenAI(
501 base_url=base_url,
502 api_key=None,
503 admin_api_key=None,
504 _enforce_credentials=False,
505 _strict_response_validation=True,

Callers

nothing calls this directly

Calls 7

_prepare_optionsMethod · 0.95
OpenAIClass · 0.90
FinalRequestOptionsClass · 0.90
OmitClass · 0.90
update_envFunction · 0.85
_build_requestMethod · 0.45
getMethod · 0.45

Tested by

no test coverage detected