@@ -1059,21 +1059,23 @@ mod tests {
1059
1059
struct TestStructFixedField < ' a > {
1060
1060
// will be serialized as Value::Array<Vec<Value::Int>>
1061
1061
array_field : & ' a [ u8 ] ,
1062
+ vec_field : Vec < u8 > ,
1062
1063
1063
1064
// will be serialized as Value::Fixed
1064
1065
#[ serde( serialize_with = "avro_serialize_fixed" ) ]
1065
1066
fixed_field : [ u8 ; 6 ] ,
1066
1067
#[ serde( serialize_with = "avro_serialize_fixed" ) ]
1067
1068
fixed_field2 : & ' a [ u8 ] ,
1069
+ #[ serde( serialize_with = "avro_serialize_fixed" ) ]
1070
+ vec_field2 : Vec < u8 > ,
1068
1071
1069
1072
// will be serialized as Value::Bytes
1070
1073
#[ serde( serialize_with = "avro_serialize_bytes" ) ]
1071
1074
bytes_field : & ' a [ u8 ] ,
1072
1075
#[ serde( serialize_with = "avro_serialize_bytes" ) ]
1073
1076
bytes_field2 : [ u8 ; 6 ] ,
1074
-
1075
- // will be serialized as Value::Array<Vec<Value::Int>>
1076
- vec_field : Vec < u8 > ,
1077
+ #[ serde( serialize_with = "avro_serialize_bytes" ) ]
1078
+ vec_field3 : Vec < u8 > ,
1077
1079
}
1078
1080
1079
1081
let test = TestStructFixedField {
@@ -1083,6 +1085,8 @@ mod tests {
1083
1085
fixed_field : [ 1 ; 6 ] ,
1084
1086
fixed_field2 : & [ 6 , 66 ] ,
1085
1087
vec_field : vec ! [ 3 , 33 ] ,
1088
+ vec_field2 : vec ! [ 4 , 44 ] ,
1089
+ vec_field3 : vec ! [ 5 , 55 ] ,
1086
1090
} ;
1087
1091
let expected = Value :: Record ( vec ! [
1088
1092
(
@@ -1094,6 +1098,15 @@ mod tests {
1094
1098
. collect( ) ,
1095
1099
) ,
1096
1100
) ,
1101
+ (
1102
+ "vec_field" . to_owned( ) ,
1103
+ Value :: Array (
1104
+ test. vec_field
1105
+ . iter( )
1106
+ . map( |i| Value :: Int ( * i as i32 ) )
1107
+ . collect( ) ,
1108
+ ) ,
1109
+ ) ,
1097
1110
(
1098
1111
"fixed_field" . to_owned( ) ,
1099
1112
Value :: Fixed ( 6 , Vec :: from( test. fixed_field) ) ,
@@ -1102,6 +1115,10 @@ mod tests {
1102
1115
"fixed_field2" . to_owned( ) ,
1103
1116
Value :: Fixed ( 2 , Vec :: from( test. fixed_field2) ) ,
1104
1117
) ,
1118
+ (
1119
+ "vec_field2" . to_owned( ) ,
1120
+ Value :: Fixed ( 2 , Vec :: from( test. vec_field2. clone( ) ) ) ,
1121
+ ) ,
1105
1122
(
1106
1123
"bytes_field" . to_owned( ) ,
1107
1124
Value :: Bytes ( Vec :: from( test. bytes_field) ) ,
@@ -1111,13 +1128,8 @@ mod tests {
1111
1128
Value :: Bytes ( Vec :: from( test. bytes_field2) ) ,
1112
1129
) ,
1113
1130
(
1114
- "vec_field" . to_owned( ) ,
1115
- Value :: Array (
1116
- test. vec_field
1117
- . iter( )
1118
- . map( |i| Value :: Int ( * i as i32 ) )
1119
- . collect( ) ,
1120
- ) ,
1131
+ "vec_field3" . to_owned( ) ,
1132
+ Value :: Bytes ( Vec :: from( test. vec_field3. clone( ) ) ) ,
1121
1133
) ,
1122
1134
] ) ;
1123
1135
assert_eq ! ( expected, to_value( test) . unwrap( ) ) ;
0 commit comments