add tests for From<XxxRejection>
This commit is contained in:
@@ -11,6 +11,7 @@ use axum::routing::{get, post};
|
|||||||
use axum::{Form, Json, Router};
|
use axum::{Form, Json, Router};
|
||||||
use axum_valid::Valid;
|
use axum_valid::Valid;
|
||||||
use serde::{Deserialize, Serialize};
|
use serde::{Deserialize, Serialize};
|
||||||
|
use serde_json::json;
|
||||||
use std::net::SocketAddr;
|
use std::net::SocketAddr;
|
||||||
use validator::Validate;
|
use validator::Validate;
|
||||||
|
|
||||||
@@ -62,6 +63,12 @@ async fn main() -> anyhow::Result<()> {
|
|||||||
.await?;
|
.await?;
|
||||||
assert_eq!(valid_path_response.status(), StatusCode::OK);
|
assert_eq!(valid_path_response.status(), StatusCode::OK);
|
||||||
|
|
||||||
|
let invalid_path_response = client
|
||||||
|
.get(format!("{}/path/invalid/path", server_url))
|
||||||
|
.send()
|
||||||
|
.await?;
|
||||||
|
assert_eq!(invalid_path_response.status(), StatusCode::BAD_REQUEST);
|
||||||
|
|
||||||
let invalid_path_response = client
|
let invalid_path_response = client
|
||||||
.get(format!(
|
.get(format!(
|
||||||
"{}/path/{}/{}",
|
"{}/path/{}/{}",
|
||||||
@@ -81,6 +88,13 @@ async fn main() -> anyhow::Result<()> {
|
|||||||
.await?;
|
.await?;
|
||||||
assert_eq!(valid_query_response.status(), StatusCode::OK);
|
assert_eq!(valid_query_response.status(), StatusCode::OK);
|
||||||
|
|
||||||
|
let invalid_query_response = client
|
||||||
|
.get(&query_url)
|
||||||
|
.query(&[("invalid", "query")])
|
||||||
|
.send()
|
||||||
|
.await?;
|
||||||
|
assert_eq!(invalid_query_response.status(), StatusCode::BAD_REQUEST);
|
||||||
|
|
||||||
let invalid_query_response = client
|
let invalid_query_response = client
|
||||||
.get(&query_url)
|
.get(&query_url)
|
||||||
.query(&invalid_parameters)
|
.query(&invalid_parameters)
|
||||||
@@ -98,6 +112,16 @@ async fn main() -> anyhow::Result<()> {
|
|||||||
.await?;
|
.await?;
|
||||||
assert_eq!(valid_form_response.status(), StatusCode::OK);
|
assert_eq!(valid_form_response.status(), StatusCode::OK);
|
||||||
|
|
||||||
|
let invalid_form_response = client
|
||||||
|
.post(&form_url)
|
||||||
|
.form(&[("invalid", "form")])
|
||||||
|
.send()
|
||||||
|
.await?;
|
||||||
|
assert_eq!(
|
||||||
|
invalid_form_response.status(),
|
||||||
|
StatusCode::UNPROCESSABLE_ENTITY
|
||||||
|
);
|
||||||
|
|
||||||
let invalid_form_response = client
|
let invalid_form_response = client
|
||||||
.post(&form_url)
|
.post(&form_url)
|
||||||
.form(&invalid_parameters)
|
.form(&invalid_parameters)
|
||||||
@@ -115,6 +139,16 @@ async fn main() -> anyhow::Result<()> {
|
|||||||
.await?;
|
.await?;
|
||||||
assert_eq!(valid_json_response.status(), StatusCode::OK);
|
assert_eq!(valid_json_response.status(), StatusCode::OK);
|
||||||
|
|
||||||
|
let invalid_json_response = client
|
||||||
|
.post(&json_url)
|
||||||
|
.json(&json!({"invalid": "json"}))
|
||||||
|
.send()
|
||||||
|
.await?;
|
||||||
|
assert_eq!(
|
||||||
|
invalid_json_response.status(),
|
||||||
|
StatusCode::UNPROCESSABLE_ENTITY
|
||||||
|
);
|
||||||
|
|
||||||
let invalid_json_response = client
|
let invalid_json_response = client
|
||||||
.post(&json_url)
|
.post(&json_url)
|
||||||
.json(&invalid_parameters)
|
.json(&invalid_parameters)
|
||||||
|
|||||||
Reference in New Issue
Block a user