Attribute Macro stubr::mock [−][src]
#[mock]
Expand description
Starts a Stubr mock server and creates a stubr
variable which can be used to call the server e.g. stubr.uri()
.
It supports both standard and async test functions.
Example
use asserhttp::*; // optional #[test] #[stubr::mock] // <- takes stubs under crate's "tests/stubs" by default #[should_panic] // <- if required place it after '#[stubr::mock]' to avoid unused warnings fn simple_test() { isahc::get(stubr.uri()).expect_status_ok(); } // also works for async functions #[async_std::test] #[stubr::mock] async fn async_test() { isahc::get(stubr.uri()).await.expect_status_ok(); }
Configuration
// path to stub file (or directory) under crate's "tests/stubs" #[test] #[stubr::mock("path/to/stubs")] // <- or "path/to/stubs/stub.json" for a single file fn default() {} // absolute path ; not appending to "tests/stubs" #[test] #[stubr::mock(full_path = "tests/other/stubs")] fn full_path() {} // start on a dedicated port #[test] #[stubr::mock(port = 1234)] fn port() {}