Function goose_eggs::valid_header_value [−][src]
pub fn valid_header_value(headers: &HeaderMap, header: &Header<'_>) -> bool
Expand description
Returns a bool
indicating whether or not a header contains an expected value.
Returns true
if the expected value was found, otherwise returns false
.
While you can invoke this function directly, it’s generally preferred to invoke
validate_and_load_static_assets
which in turn invokes this function.
Example
use goose::prelude::*; use goose_eggs::{valid_header_value, Header}; task!(validate_header_value).set_on_start(); async fn validate_header_value(user: &GooseUser) -> GooseTaskResult { let mut goose = user.get("/").await?; match goose.response { Ok(response) => { // Copy the headers so we have them for logging if there are errors. let headers = &response.headers().clone(); if !valid_header_value(headers, &Header::name_value("server", "nginx")) { return user.set_failure( &format!("{}: server header value not correct: {}", goose.request.raw.url, "nginx"), &mut goose.request, Some(&headers), None, ); } } Err(e) => { return user.set_failure( &format!("{}: no response from server: {}", goose.request.raw.url, e), &mut goose.request, None, None, ); } } Ok(()) }