mirror of
https://github.com/openai/codex.git
synced 2026-09-13 11:47:17 +00:00
## Why `codex-http-client` is the intended owner of `reqwest`, while direct first-party dependencies are tracked as migration debt. ## What changed - Use `http` header and status types directly in core code and tests. - Build the MCP test readiness client through `HttpClientBuilder`. - Remove `reqwest` from `codex-core` and its temporary dependency-policy exception. GitOrigin-RevId: 8d5c7c86256294a7bb8aa1ae10cc5bea4cb1fc56
43 lines
1.5 KiB
Rust
43 lines
1.5 KiB
Rust
use codex_login::AuthHeaders;
|
|
use codex_login::CodexAuth;
|
|
use core_test_support::responses::ev_completed;
|
|
use core_test_support::responses::ev_response_created;
|
|
use core_test_support::responses::mount_sse_once;
|
|
use core_test_support::responses::sse;
|
|
use core_test_support::responses::start_mock_server;
|
|
use core_test_support::skip_if_no_network;
|
|
use core_test_support::test_codex::test_codex;
|
|
use http::HeaderMap;
|
|
use http::HeaderValue;
|
|
use http::header::AUTHORIZATION;
|
|
|
|
#[tokio::test(flavor = "multi_thread", worker_threads = 2)]
|
|
async fn header_auth_is_attached_to_responses_requests() -> anyhow::Result<()> {
|
|
skip_if_no_network!(Ok(()));
|
|
|
|
let server = start_mock_server().await;
|
|
let response_mock = mount_sse_once(
|
|
&server,
|
|
sse(vec![ev_response_created("resp-1"), ev_completed("resp-1")]),
|
|
)
|
|
.await;
|
|
let mut headers = HeaderMap::new();
|
|
headers.insert(AUTHORIZATION, HeaderValue::from_static("Bearer external"));
|
|
headers.insert("x-external-auth", HeaderValue::from_static("enabled"));
|
|
let mut builder = test_codex().with_auth(CodexAuth::Headers(AuthHeaders::new(headers)));
|
|
let test = builder.build_with_auto_env(&server).await?;
|
|
|
|
test.submit_turn("hello").await?;
|
|
|
|
let request = response_mock.single_request();
|
|
assert_eq!(
|
|
request.header("authorization").as_deref(),
|
|
Some("Bearer external")
|
|
);
|
|
assert_eq!(
|
|
request.header("x-external-auth").as_deref(),
|
|
Some("enabled")
|
|
);
|
|
Ok(())
|
|
}
|