pub struct TestServer;Expand description
A testing server.
TestServer is very simple test server that simplify process of writing integration tests for
network applications.
§Examples
use actix_service::fn_service;
use actix_server::TestServer;
#[actix_rt::main]
async fn main() {
let srv = TestServer::start(|| fn_service(
|sock| async move {
println!("New connection: {:?}", sock);
Ok::<_, ()>(())
}
));
println!("SOCKET: {:?}", srv.connect());
}Implementations§
Source§impl TestServer
impl TestServer
Sourcepub fn start(factory: impl ServerServiceFactory<TcpStream>) -> TestServerHandle
pub fn start(factory: impl ServerServiceFactory<TcpStream>) -> TestServerHandle
Start new TestServer using application factory and default server config.
Sourcepub fn start_with_builder(
server_builder: ServerBuilder,
factory: impl ServerServiceFactory<TcpStream>,
) -> TestServerHandle
pub fn start_with_builder( server_builder: ServerBuilder, factory: impl ServerServiceFactory<TcpStream>, ) -> TestServerHandle
Start new TestServer using application factory and server builder.
Sourcepub fn unused_addr() -> SocketAddr
pub fn unused_addr() -> SocketAddr
Get first available unused local address.
The listener is dropped before this method returns, so the port is no longer reserved.
Use Self::unused_listener() to keep the port reserved.
Sourcepub fn unused_listener() -> (TcpListener, SocketAddr)
pub fn unused_listener() -> (TcpListener, SocketAddr)
Bind a TCP listener to an OS-assigned port on the IPv4 loopback address.
Returns the nonblocking listener and its local address. The caller owns the listener, which
keeps the port reserved until it is dropped. Unlike Self::unused_addr(), this method
leaves the listener open so it can be passed to ServerBuilder::listen().