[][src]Function actix_web::test::call_service

pub async fn call_service<S, R, B, E, '_>(app: &'_ mut S, req: R) -> S::Response where
    S: Service<Request = R, Response = ServiceResponse<B>, Error = E>,
    E: Debug

Calls service and waits for response future completion.

use actix_web::{test, web, App, HttpResponse, http::StatusCode};

#[actix_rt::test]
async fn test_response() {
    let mut app = test::init_service(
        App::new()
            .service(web::resource("/test").to(|| async {
                HttpResponse::Ok()
            }))
    ).await;

    // Create request object
    let req = test::TestRequest::with_uri("/test").to_request();

    // Call application
    let resp = test::call_service(&mut app, req).await;
    assert_eq!(resp.status(), StatusCode::OK);
}