Struct wiremock::matchers::PathRegexMatcher
source · pub struct PathRegexMatcher(_);
Expand description
Match the path of a request against a regular expression.
Example:
use wiremock::{MockServer, Mock, ResponseTemplate};
use wiremock::matchers::path_regex;
#[async_std::main]
async fn main() {
// Arrange
let mock_server = MockServer::start().await;
let response = ResponseTemplate::new(200).set_body_string("world");
let mock = Mock::given(path_regex(r"^/hello/\d{3}$")).respond_with(response);
mock_server.register(mock).await;
// Act
let status = surf::get(format!("{}/hello/123", &mock_server.uri()))
.await
.unwrap()
.status();
// Assert
assert_eq!(status, 200);
}
Example:
use wiremock::{MockServer, Mock, ResponseTemplate};
use wiremock::matchers::path_regex;
#[async_std::main]
async fn main() {
// Arrange
let mock_server = MockServer::start().await;
let response = ResponseTemplate::new(200).set_body_string("world");
let mock = Mock::given(path_regex(r"^/users/[a-z0-9-~_]{1,}/posts$")).respond_with(response);
mock_server.register(mock).await;
// Act
let status = surf::get(format!("{}/users/da2854ea-b70f-46e7-babc-2846eff4d33c/posts", &mock_server.uri()))
.await
.unwrap()
.status();
// Assert
assert_eq!(status, 200);
}