update to 0.5.0
This commit is contained in:
28
src/query.rs
28
src/query.rs
@@ -1,21 +1,37 @@
|
||||
//! # Implementation of the `HasValidate` trait for the `Query` extractor.
|
||||
//!
|
||||
|
||||
use crate::{HasValidate, ValidRejection};
|
||||
use axum::extract::rejection::QueryRejection;
|
||||
use crate::HasValidate;
|
||||
use axum::extract::Query;
|
||||
use validator::Validate;
|
||||
|
||||
impl<T: Validate> HasValidate for Query<T> {
|
||||
type Validate = T;
|
||||
type Rejection = QueryRejection;
|
||||
fn get_validate(&self) -> &T {
|
||||
&self.0
|
||||
}
|
||||
}
|
||||
|
||||
impl From<QueryRejection> for ValidRejection<QueryRejection> {
|
||||
fn from(value: QueryRejection) -> Self {
|
||||
Self::Inner(value)
|
||||
#[cfg(test)]
|
||||
mod tests {
|
||||
use crate::tests::{ValidTest, ValidTestParameter};
|
||||
use axum::extract::Query;
|
||||
use axum::http::StatusCode;
|
||||
use reqwest::RequestBuilder;
|
||||
|
||||
impl<T: ValidTestParameter> ValidTest for Query<T> {
|
||||
const ERROR_STATUS_CODE: StatusCode = StatusCode::BAD_REQUEST;
|
||||
|
||||
fn set_valid_request(builder: RequestBuilder) -> RequestBuilder {
|
||||
builder.query(&T::valid())
|
||||
}
|
||||
|
||||
fn set_error_request(builder: RequestBuilder) -> RequestBuilder {
|
||||
builder.query(T::error())
|
||||
}
|
||||
|
||||
fn set_invalid_request(builder: RequestBuilder) -> RequestBuilder {
|
||||
builder.query(&T::invalid())
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user