Struct actix_web::test::TestServer
[−]
[src]
pub struct TestServer { /* fields omitted */ }
The TestServer
type.
TestServer
is very simple test server that simplify process of writing
integration tests cases for actix web applications.
Examples
use actix_web::test::TestServer; let mut srv = TestServer::new(|app| app.handler(my_handler)); let req = srv.get().finish().unwrap(); let response = srv.execute(req.send()).unwrap(); assert!(response.status().is_success());
Methods
impl TestServer
[src]
pub fn new<F>(config: F) -> Self where
F: Sync + Send + 'static + Fn(&mut TestApp<()>),
[src]
F: Sync + Send + 'static + Fn(&mut TestApp<()>),
Start new test server
This method accepts configuration method. You can add middlewares or set handlers for test application.
pub fn build() -> TestServerBuilder<()>
[src]
Create test server builder
pub fn build_with_state<F, S>(state: F) -> TestServerBuilder<S> where
F: Fn() -> S + Sync + Send + 'static,
S: 'static,
[src]
F: Fn() -> S + Sync + Send + 'static,
S: 'static,
Create test server builder with specific state factory
This method can be used for constructing application state. Also it can be used for external dependecy initialization, like creating sync actors for diesel integration.
pub fn with_factory<F, U, H>(factory: F) -> Self where
F: Fn() -> U + Sync + Send + 'static,
U: IntoIterator<Item = H> + 'static,
H: IntoHttpHandler + 'static,
[src]
F: Fn() -> U + Sync + Send + 'static,
U: IntoIterator<Item = H> + 'static,
H: IntoHttpHandler + 'static,
Start new test server with application factory
pub fn unused_addr() -> SocketAddr
[src]
Get firat available unused address
pub fn addr(&self) -> SocketAddr
[src]
Construct test server url
pub fn url(&self, uri: &str) -> String
[src]
Construct test server url
pub fn execute<F, I, E>(&mut self, fut: F) -> Result<I, E> where
F: Future<Item = I, Error = E>,
[src]
F: Future<Item = I, Error = E>,
Execute future on current core
pub fn ws(&mut self) -> Result<(ClientReader, ClientWriter), ClientError>
[src]
Connect to websocket server
pub fn get(&self) -> ClientRequestBuilder
[src]
Create GET
request
pub fn post(&self) -> ClientRequestBuilder
[src]
Create POST
request
pub fn head(&self) -> ClientRequestBuilder
[src]
Create HEAD
request
pub fn client(&self, meth: Method, path: &str) -> ClientRequestBuilder
[src]
Connect to test http server