1
0
Fork 0
mirror of https://github.com/actix/actix-web.git synced 2024-05-20 09:18:26 +00:00
This commit is contained in:
Matt Palmer 2024-05-07 09:01:17 +00:00 committed by GitHub
commit edb1643634
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
2 changed files with 21 additions and 1 deletions

View file

@ -3,6 +3,7 @@
## Unreleased
- Minimum supported Rust version (MSRV) is now 1.72.
- Add `TestServerConfig::disable_redirects()` method.
## 0.1.3

View file

@ -147,6 +147,8 @@ where
StreamType::Rustls022(_) => true,
};
let client_cfg = cfg.clone();
// run server in separate orphaned thread
thread::spawn(move || {
rt::System::new().block_on(async move {
@ -416,7 +418,13 @@ where
}
};
Client::builder().connector(connector).finish()
let mut client_builder = Client::builder().connector(connector);
if client_cfg.disable_redirects {
client_builder = client_builder.disable_redirects();
}
client_builder.finish()
};
TestServer {
@ -461,6 +469,7 @@ pub struct TestServerConfig {
client_request_timeout: Duration,
port: u16,
workers: usize,
disable_redirects: bool,
}
impl Default for TestServerConfig {
@ -478,6 +487,7 @@ impl TestServerConfig {
client_request_timeout: Duration::from_secs(5),
port: 0,
workers: 1,
disable_redirects: false,
}
}
@ -558,6 +568,15 @@ impl TestServerConfig {
self.workers = workers;
self
}
/// Instruct the client to not follow redirects.
///
/// By default, the client will follow up to 10 consecutive redirects
/// before giving up.
pub fn disable_redirects(mut self) -> Self {
self.disable_redirects = true;
self
}
}
/// A basic HTTP server controller that simplifies the process of writing integration tests for