#![allow(clippy::disallowed_names)] #[cfg(feature = "arrayvec07")] mod arrayvec; mod attr_order; mod bound; #[cfg(feature = "bytes1")] mod bytes; #[cfg(feature = "chrono04")] mod chrono; mod contract; mod crate_alias; #[cfg(any(feature = "rust_decimal1", feature = "bigdecimal04"))] mod decimal; mod default; mod deprecated; mod docs; #[cfg(feature = "either1")] mod either; mod enum_repr; mod enums; mod enums_deny_unknown_fields; mod enums_flattened; mod enums_option_flattened; mod enums_ref_variants; mod enums_untagged_variant; mod examples; mod extend; mod flatten; mod from_into; mod from_value; mod garde; #[cfg(feature = "indexmap2")] mod indexmap; mod inline_subschemas; #[cfg(feature = "jiff02")] mod jiff; mod macros; mod map; mod remote_derive; mod same_name; mod schema_name; mod schema_with; #[cfg(feature = "semver1")] mod semver; mod settings; mod skip; #[cfg(feature = "smallvec1")] mod smallvec; #[cfg(any(feature = "smol_str02", feature = "smol_str03"))] mod smol_str; mod std_types; mod structs; mod transform; mod transparent; mod unset; #[cfg(feature = "url2")] mod url; #[cfg(feature = "uuid1")] mod uuid; mod validator; mod prelude { pub(crate) use crate::test; pub(crate) use crate::test_helper::{arbitrary_values, arbitrary_values_except}; pub(crate) use schemars::JsonSchema; pub(crate) use serde::{Deserialize, Serialize}; pub(crate) use serde_json::{json, Value}; } mod test_helper; #[macro_export] macro_rules! test_name { () => {{ fn f() {} fn type_name_of_val(_: T) -> &'static str { core::any::type_name::() } let test_fn_name = type_name_of_val(f) .trim_end_matches("::f") .split("::") .last() .unwrap(); format!("{}~{}", core::file!(), test_fn_name) }}; } #[macro_export] macro_rules! test { ($type:ty, $settings:expr) => { $crate::test_helper::TestHelper::<$type>::new($crate::test_name!(), $settings) }; ($type:ty) => { test!($type, schemars::generate::SchemaSettings::default()) }; (value: $value:expr, $settings:expr) => { $crate::test_helper::TestHelper::new_for_value($crate::test_name!(), $settings, $value) }; (value: $value:expr) => { test!(value: $value, schemars::generate::SchemaSettings::default()) }; }