1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73
mod any; mod bool; mod datetime; mod floats; mod id; mod integers; mod json; mod naive_date; mod naive_time; mod string; mod uuid; #[cfg(feature = "bson")] mod bson; #[cfg(feature = "chrono_tz")] mod chrono_tz; #[cfg(feature = "url")] mod url; pub use any::Any; pub use id::ID; pub use json::Json; #[cfg(test)] mod tests { use super::ID; use crate::Type; use bson::oid::ObjectId; use chrono::{DateTime, NaiveDate, NaiveTime, Utc}; use uuid::Uuid; #[test] fn test_scalar_type() { assert_eq!(<bool as Type>::type_name(), "Boolean"); assert_eq!(<bool as Type>::qualified_type_name(), "Boolean!"); assert_eq!(<i32 as Type>::type_name(), "Int"); assert_eq!(<i32 as Type>::qualified_type_name(), "Int!"); assert_eq!(<f32 as Type>::type_name(), "Float"); assert_eq!(<f32 as Type>::qualified_type_name(), "Float!"); assert_eq!(<&str as Type>::type_name(), "String"); assert_eq!(<&str as Type>::qualified_type_name(), "String!"); assert_eq!(<String as Type>::type_name(), "String"); assert_eq!(<String as Type>::qualified_type_name(), "String!"); assert_eq!(<ID as Type>::type_name(), "ID"); assert_eq!(<ID as Type>::qualified_type_name(), "ID!"); assert_eq!(<NaiveDate as Type>::type_name(), "NaiveDate"); assert_eq!(<NaiveDate as Type>::qualified_type_name(), "NaiveDate!"); assert_eq!(<NaiveTime as Type>::type_name(), "NaiveTime"); assert_eq!(<NaiveTime as Type>::qualified_type_name(), "NaiveTime!"); assert_eq!(<DateTime::<Utc> as Type>::type_name(), "DateTime"); assert_eq!( <DateTime::<Utc> as Type>::qualified_type_name(), "DateTime!" ); assert_eq!(<Uuid as Type>::type_name(), "UUID"); assert_eq!(<Uuid as Type>::qualified_type_name(), "UUID!"); #[cfg(feature = "bson")] { assert_eq!(<ObjectId as Type>::type_name(), "ObjectId"); assert_eq!(<ObjectId as Type>::qualified_type_name(), "ObjectId!"); } } }