Simplify TestClient implementation (#3096)

This commit is contained in:
Tobias Bieniek
2024-12-23 22:21:00 +01:00
committed by GitHub
parent 8af2f27877
commit f476b313ad
+10 -12
View File
@@ -1,10 +1,8 @@
use super::{serve, Request, Response};
use bytes::Bytes;
use futures_util::future::BoxFuture;
use http::{
header::{HeaderName, HeaderValue},
StatusCode,
};
use http::header::{HeaderName, HeaderValue};
use std::ops::Deref;
use std::{convert::Infallible, future::IntoFuture, net::SocketAddr};
use tokio::net::TcpListener;
use tower::make::Shared;
@@ -144,6 +142,14 @@ pub(crate) struct TestResponse {
response: reqwest::Response,
}
impl Deref for TestResponse {
type Target = reqwest::Response;
fn deref(&self) -> &Self::Target {
&self.response
}
}
impl TestResponse {
#[allow(dead_code)]
pub(crate) async fn bytes(self) -> Bytes {
@@ -162,14 +168,6 @@ impl TestResponse {
self.response.json().await.unwrap()
}
pub(crate) fn status(&self) -> StatusCode {
StatusCode::from_u16(self.response.status().as_u16()).unwrap()
}
pub(crate) fn headers(&self) -> http::HeaderMap {
self.response.headers().clone()
}
pub(crate) async fn chunk(&mut self) -> Option<Bytes> {
self.response.chunk().await.unwrap()
}