#![cfg_attr(docsrs, feature(doc_cfg))]
#![doc(html_logo_url = "https://media.githubusercontent.com/media/microsoft/oxidizer/refs/heads/main/crates/fetch_options/logo.png")]
#![doc(html_favicon_url = "https://media.githubusercontent.com/media/microsoft/oxidizer/refs/heads/main/crates/fetch_options/favicon.ico")]
use std::time::Duration;
mod connection_info;
mod connection_keep_alive;
mod http2;
mod pooling;
mod request_filter;
mod transport;
pub use connection_info::ConnectionInfo;
pub use connection_keep_alive::ConnectionKeepAlive;
pub use http2::Http2Options;
pub use pooling::{ConnectionIdleTimeout, ConnectionLifetime, ConnectionPoolOptions, PoolIndex, PoolSelection};
pub use request_filter::RequestFilter;
pub use transport::TransportOptions;
const DEFAULT_CONNECT_TIMEOUT: Duration = Duration::from_secs(30);
const DEFAULT_KEEP_ALIVE_TIMEOUT: Duration = Duration::from_secs(20);
const DEFAULT_KEEP_ALIVE_INTERVAL: Duration = Duration::from_secs(20);
#[cfg(test)]
mod tests {
use super::*;
#[cfg_attr(miri, ignore)]
#[test]
fn constants_have_expected_values() {
assert_eq!(DEFAULT_CONNECT_TIMEOUT, Duration::from_secs(30));
assert_eq!(DEFAULT_KEEP_ALIVE_TIMEOUT, Duration::from_secs(20));
assert_eq!(DEFAULT_KEEP_ALIVE_INTERVAL, Duration::from_secs(20));
}
}