Struct wiremock::matchers::BasicAuthMatcher
source · pub struct BasicAuthMatcher(_);
Expand description
Match an incoming request if it contains the basic authentication header with the username and password as per RFC 7617.
Example:
use wiremock::{MockServer, Mock, ResponseTemplate};
use wiremock::matchers::basic_auth;
use serde::{Deserialize, Serialize};
use http_types::auth::BasicAuth;
use std::convert::TryInto;
#[async_std::main]
async fn main() {
// Arrange
let mock_server = MockServer::start().await;
Mock::given(basic_auth("username", "password"))
.respond_with(ResponseTemplate::new(200))
.mount(&mock_server)
.await;
let auth = BasicAuth::new("username", "password");
let client: surf::Client = surf::Config::new()
.set_base_url(surf::Url::parse(&mock_server.uri()).unwrap())
.add_header(auth.name(), auth.value()).unwrap()
.try_into().unwrap();
// Act
let status = client.get("/")
.await
.unwrap()
.status();
// Assert
assert_eq!(status, 200);
}
Implementations§
source§impl BasicAuthMatcher
impl BasicAuthMatcher
sourcepub fn from_credentials(
username: impl AsRef<str>,
password: impl AsRef<str>
) -> Self
pub fn from_credentials(
username: impl AsRef<str>,
password: impl AsRef<str>
) -> Self
Match basic authentication header using the given username and password.
sourcepub fn from_token(token: impl AsRef<str>) -> Self
pub fn from_token(token: impl AsRef<str>) -> Self
Match basic authentication header with the exact token given.