@@ -136,9 +136,10 @@ fn test_slice() {
136
136
bincode:: encode_into_slice ( input, & mut buffer, Configuration :: standard ( ) ) . unwrap ( ) ;
137
137
assert_eq ! ( & buffer[ ..8 ] , & [ 7 , 1 , 2 , 3 , 4 , 5 , 6 , 7 ] ) ;
138
138
139
- let output: & [ u8 ] =
139
+ let ( output, len ) : ( & [ u8 ] , usize ) =
140
140
bincode:: decode_from_slice ( & mut buffer[ ..8 ] , Configuration :: standard ( ) ) . unwrap ( ) ;
141
141
assert_eq ! ( input, output) ;
142
+ assert_eq ! ( len, 8 ) ;
142
143
}
143
144
144
145
#[ test]
@@ -148,18 +149,20 @@ fn test_option_slice() {
148
149
let n = bincode:: encode_into_slice ( input, & mut buffer, Configuration :: standard ( ) ) . unwrap ( ) ;
149
150
assert_eq ! ( & buffer[ ..n] , & [ 1 , 7 , 1 , 2 , 3 , 4 , 5 , 6 , 7 ] ) ;
150
151
151
- let output: Option < & [ u8 ] > =
152
+ let ( output, len ) : ( Option < & [ u8 ] > , usize ) =
152
153
bincode:: decode_from_slice ( & buffer[ ..n] , Configuration :: standard ( ) ) . unwrap ( ) ;
153
154
assert_eq ! ( input, output) ;
155
+ assert_eq ! ( len, n) ;
154
156
155
157
let mut buffer = [ 0u8 ; 32 ] ;
156
158
let input: Option < & [ u8 ] > = None ;
157
159
let n = bincode:: encode_into_slice ( input, & mut buffer, Configuration :: standard ( ) ) . unwrap ( ) ;
158
160
assert_eq ! ( & buffer[ ..n] , & [ 0 ] ) ;
159
161
160
- let output: Option < & [ u8 ] > =
162
+ let ( output, len ) : ( Option < & [ u8 ] > , usize ) =
161
163
bincode:: decode_from_slice ( & buffer[ ..n] , Configuration :: standard ( ) ) . unwrap ( ) ;
162
164
assert_eq ! ( input, output) ;
165
+ assert_eq ! ( len, n) ;
163
166
}
164
167
165
168
#[ test]
@@ -172,9 +175,10 @@ fn test_str() {
172
175
& [ 11 , 72 , 101 , 108 , 108 , 111 , 32 , 119 , 111 , 114 , 108 , 100 ]
173
176
) ;
174
177
175
- let output: & str =
178
+ let ( output, len ) : ( & str , usize ) =
176
179
bincode:: decode_from_slice ( & mut buffer[ ..12 ] , Configuration :: standard ( ) ) . unwrap ( ) ;
177
180
assert_eq ! ( input, output) ;
181
+ assert_eq ! ( len, 12 ) ;
178
182
}
179
183
180
184
#[ test]
@@ -187,18 +191,20 @@ fn test_option_str() {
187
191
& [ 1 , 11 , 72 , 101 , 108 , 108 , 111 , 32 , 119 , 111 , 114 , 108 , 100 ]
188
192
) ;
189
193
190
- let output: Option < & str > =
194
+ let ( output, len ) : ( Option < & str > , usize ) =
191
195
bincode:: decode_from_slice ( & buffer[ ..n] , Configuration :: standard ( ) ) . unwrap ( ) ;
192
196
assert_eq ! ( input, output) ;
197
+ assert_eq ! ( len, n) ;
193
198
194
199
let mut buffer = [ 0u8 ; 32 ] ;
195
200
let input: Option < & str > = None ;
196
201
let n = bincode:: encode_into_slice ( input, & mut buffer, Configuration :: standard ( ) ) . unwrap ( ) ;
197
202
assert_eq ! ( & buffer[ ..n] , & [ 0 ] ) ;
198
203
199
- let output: Option < & str > =
204
+ let ( output, len ) : ( Option < & str > , usize ) =
200
205
bincode:: decode_from_slice ( & buffer[ ..n] , Configuration :: standard ( ) ) . unwrap ( ) ;
201
206
assert_eq ! ( input, output) ;
207
+ assert_eq ! ( len, n) ;
202
208
}
203
209
204
210
#[ test]
@@ -208,7 +214,8 @@ fn test_array() {
208
214
bincode:: encode_into_slice ( input, & mut buffer, Configuration :: standard ( ) ) . unwrap ( ) ;
209
215
assert_eq ! ( & buffer[ ..10 ] , & [ 10 , 20 , 30 , 40 , 50 , 60 , 70 , 80 , 90 , 100 ] ) ;
210
216
211
- let output: [ u8 ; 10 ] =
217
+ let ( output, len ) : ( [ u8 ; 10 ] , usize ) =
212
218
bincode:: decode_from_slice ( & mut buffer[ ..10 ] , Configuration :: standard ( ) ) . unwrap ( ) ;
213
219
assert_eq ! ( input, output) ;
220
+ assert_eq ! ( len, 10 ) ;
214
221
}
0 commit comments