| #![cfg_attr(not(feature = "std"), no_std)] |
| |
| extern crate alloc; |
| |
| #[macro_use] |
| mod common_macro; |
| |
| mod custom_reader { |
| #[cfg(feature = "derive")] |
| mod test_custom_reader; |
| } |
| |
| /// this module doesn't contain runnable tests; |
| /// it's included into module tree to ensure derived code doesn't raise compilation |
| /// errors |
| #[rustfmt::skip] |
| #[cfg(feature = "derive")] |
| mod compile_derives { |
| mod test_macro_namespace_collisions; |
| #[allow(unused)] |
| mod test_generic_structs; |
| mod test_generic_enums; |
| mod test_recursive_structs; |
| |
| #[cfg(feature = "unstable__schema")] |
| mod schema { |
| mod test_generic_enums; |
| } |
| } |
| |
| /// These are full roundtrip `BorshSerialize`/`BorshDeserialize` tests |
| #[rustfmt::skip] |
| mod roundtrip { |
| mod test_strings; |
| #[cfg(feature = "ascii")] |
| mod test_ascii_strings; |
| mod test_arrays; |
| mod test_vecs; |
| mod test_tuple; |
| mod test_primitives; |
| mod test_nonzero_integers; |
| mod test_range; |
| // mod test_phantom_data; // NOTE: there's nothing corresponding to `schema::test_phantom_data` |
| // mod test_option; // NOTE: there's nothing corresponding to `schema::test_option` |
| // mod test_box; // NOTE: there's nothing corresponding to `schema::test_box` |
| #[cfg(hash_collections)] |
| mod test_hash_map; |
| mod test_btree_map; |
| mod test_cow; |
| mod test_cells; |
| #[cfg(feature = "rc")] |
| mod test_rc; |
| |
| #[cfg(feature = "derive")] |
| mod requires_derive_category { |
| // mod test_simple_structs; // NOTE: there's nothing corresponding to `schema::test_simple_structs` |
| mod test_generic_structs; |
| mod test_simple_enums; |
| mod test_generic_enums; |
| mod test_recursive_structs; |
| mod test_recursive_enums; |
| mod test_serde_with_third_party; |
| mod test_enum_discriminants; |
| #[cfg(feature = "bytes")] |
| mod test_ultimate_many_features_combined; |
| #[cfg(feature = "bson")] |
| mod test_bson_object_ids; |
| } |
| } |
| |
| /// These are `BorshSchema` tests for various types |
| #[cfg(feature = "unstable__schema")] |
| #[rustfmt::skip] |
| mod schema { |
| #[cfg(feature = "ascii")] |
| mod test_ascii_strings; |
| mod test_strings; |
| mod test_arrays; |
| mod test_vecs; |
| mod test_tuple; |
| mod test_primitives; |
| // mod test_nonzero_integers; // NOTE: there's nothing corresponding to `roundtrip::test_nonzero_integers` |
| mod test_range; |
| mod test_phantom_data; |
| mod test_option; |
| mod test_box; |
| #[cfg(hash_collections)] |
| mod test_hash_map; |
| mod test_btree_map; |
| mod test_cow; |
| mod test_cells; |
| #[cfg(feature = "rc")] |
| mod test_rc; |
| mod test_simple_structs; |
| mod test_generic_structs; |
| mod test_simple_enums; |
| mod test_generic_enums; |
| mod test_recursive_structs; |
| mod test_recursive_enums; |
| mod test_schema_with_third_party; // NOTE: this test corresponds to `roundtrip::test_serde_with_third_party` |
| mod test_enum_discriminants; |
| // mod test_ultimate_many_features_combined; // NOTE: there's nothing corresponding to `roundtrip::test_ultimate_many_features_combined` |
| // mod test_bson_object_ids; // NOTE: there's nothing corresponding to `roundtrip::test_bson_object_ids` |
| mod schema_conflict { |
| mod test_schema_conflict; |
| } |
| |
| mod container_extension { |
| mod test_schema_validate; |
| mod test_max_size; |
| } |
| } |
| |
| mod deserialization_errors { |
| #[cfg(feature = "ascii")] |
| mod test_ascii_strings; |
| mod test_cells; |
| mod test_initial; |
| } |
| |
| mod init_in_deserialize { |
| #[cfg(feature = "derive")] |
| mod test_init_in_deserialize; |
| } |
| |
| mod zero_sized_types { |
| #[cfg(feature = "derive")] |
| mod test_zero_sized_types_forbidden; |
| } |