diff options
author | Alexander <etc9053@gmail.com> | 2024-04-07 21:38:09 +0300 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-04-07 13:38:09 -0500 |
commit | 17528729b51578c034cec5efd8599535076a8dd3 (patch) | |
tree | a9bef1c233f871ec9627879547cc82bd54775b8f | |
parent | 8a13b677f1b99ab78870f8731e75a7642f2d0530 (diff) |
Add test for `csv_vectors` example (#82)
-rw-r--r-- | Cargo.toml | 4 | ||||
-rw-r--r-- | examples/csv_vectors.rs | 13 |
2 files changed, 16 insertions, 1 deletions
@@ -44,3 +44,7 @@ axum = ["axum-framework", "futures"] [package.metadata.docs.rs] features = ["actix4", "warp"] + +[[example]] +name = "csv_vectors" +test = true
\ No newline at end of file diff --git a/examples/csv_vectors.rs b/examples/csv_vectors.rs index c193c64..78ed6af 100644 --- a/examples/csv_vectors.rs +++ b/examples/csv_vectors.rs @@ -8,7 +8,7 @@ use serde::de::DeserializeOwned; use std::default::Default; -#[derive(Debug, Deserialize, Serialize)] +#[derive(Debug, PartialEq, Deserialize, Serialize)] struct Query { #[serde(deserialize_with = "from_csv")] r: Vec<u8>, @@ -21,6 +21,17 @@ fn main() { println!("{:?}", q); } +#[test] +fn deserialize_sequence() { + let q = "s=12&r=1,2,3"; + let q: Query = qs::from_str(q).unwrap(); + let expected = Query { + r: vec![1, 2, 3], + s: 12, + }; + assert_eq!(q, expected); +} + fn from_csv<'de, D, T>(deserializer: D) -> Result<Vec<T>, D::Error> where D: serde::Deserializer<'de>, |