diff options
| author | Michael Williamson <mike@zwobble.org> | 2026-08-22 09:47:51 +0100 |
|---|---|---|
| committer | Michael Williamson <mike@zwobble.org> | 2026-08-22 09:47:51 +0100 |
| commit | 8639d5524a49e1785df751cc3bda34a3cf130644 (patch) | |
| tree | cb0985f20c81e2dd38473320a74bbe42fe125d62 /examples/16-transient-0/output/rust/src/lib.rs | |
| parent | 4112fcce6bd0a724d9d6847ba9d3b85ae9c7601f (diff) | |
Add generic struct test to examplemain
Diffstat (limited to 'examples/16-transient-0/output/rust/src/lib.rs')
| -rw-r--r-- | examples/16-transient-0/output/rust/src/lib.rs | 23 |
1 files changed, 22 insertions, 1 deletions
diff --git a/examples/16-transient-0/output/rust/src/lib.rs b/examples/16-transient-0/output/rust/src/lib.rs index a51afff..670389a 100644 --- a/examples/16-transient-0/output/rust/src/lib.rs +++ b/examples/16-transient-0/output/rust/src/lib.rs @@ -8,7 +8,7 @@ mod test { use std::path::PathBuf; use std::sync::Arc; use std::collections::HashMap; - use super::data::{EnumWithVariants, GenericNative, Native, StructSingleton, StructWithBool, StructWithBox, StructWithDifferentSharedTypes, StructWithEnum, StructWithGenericNative, StructWithInt8, StructWithInt32, StructWithInt64, StructWithList, StructWithListOfShared, StructWithNative, StructWithOption, StructWithSharedSumAndVariant, StructWithString, StructWithStruct, StructWithSum, SumWithBoxedVariants, SumWithVariants, VariantOne, VariantTwo }; + use super::data::{EnumWithVariants, GenericNative, GenericStruct, Native, StructSingleton, StructWithBool, StructWithBox, StructWithDifferentSharedTypes, StructWithEnum, StructWithGenericNative, StructWithGenericStruct, StructWithInt8, StructWithInt32, StructWithInt64, StructWithList, StructWithListOfShared, StructWithNative, StructWithOption, StructWithSharedSumAndVariant, StructWithString, StructWithStruct, StructWithSum, SumWithBoxedVariants, SumWithVariants, VariantOne, VariantTwo }; #[test] fn struct_singleton() { @@ -95,6 +95,27 @@ mod test { } #[test] + fn struct_with_generic_struct() { + let value = StructWithGenericStruct { + a: GenericStruct { a: 10, b: "x1".to_string() }, + b: GenericStruct { + a: Some("x2".to_string()), + b: GenericStruct { + a: Some("x3".to_string()), + b: GenericStruct { a: "x4".to_string(), b: "x5".to_string() }, + }, + }, + }; + + assert_round_trip_encoding( + "StructWithGenericStruct", + value, + super::data::transient_0::encode_struct_with_generic_struct, + super::data::transient_0::decode_struct_with_generic_struct, + ); + } + + #[test] fn struct_with_list() { let value = StructWithList { a: vec![10, 25], |
