1
1
#![ allow( clippy:: empty_enum, clippy:: unreadable_literal) ]
2
2
#![ cfg_attr( feature = "unstable" , feature( never_type) ) ]
3
3
4
+ use serde:: de:: IntoDeserializer ;
4
5
use serde:: Deserialize ;
5
6
use serde_test:: { assert_de_tokens_error, Token } ;
6
7
use std:: collections:: { BTreeMap , BTreeSet , HashMap , HashSet } ;
@@ -185,6 +186,16 @@ fn test_i64() {
185
186
) ;
186
187
}
187
188
189
+ #[ test]
190
+ fn test_i128 ( ) {
191
+ let deserializer = <i128 as IntoDeserializer >:: into_deserializer ( 1 ) ;
192
+ let error = <& str >:: deserialize ( deserializer) . unwrap_err ( ) ;
193
+ assert_eq ! (
194
+ error. to_string( ) ,
195
+ "invalid type: i128, expected a borrowed string" ,
196
+ ) ;
197
+ }
198
+
188
199
#[ test]
189
200
fn test_u8 ( ) {
190
201
let test = assert_de_tokens_error :: < u8 > ;
@@ -326,6 +337,13 @@ fn test_u64() {
326
337
& [ Token :: I64 ( -1 ) ] ,
327
338
"invalid value: integer `-1`, expected u64" ,
328
339
) ;
340
+
341
+ let deserializer = <u64 as IntoDeserializer >:: into_deserializer ( 1 ) ;
342
+ let error = <& str >:: deserialize ( deserializer) . unwrap_err ( ) ;
343
+ assert_eq ! (
344
+ error. to_string( ) ,
345
+ "invalid type: integer `1`, expected a borrowed string" ,
346
+ ) ;
329
347
}
330
348
331
349
#[ test]
@@ -349,6 +367,13 @@ fn test_u128() {
349
367
& [ Token :: I64 ( -1 ) ] ,
350
368
"invalid value: integer `-1`, expected u128" ,
351
369
) ;
370
+
371
+ let deserializer = <u128 as IntoDeserializer >:: into_deserializer ( 1 ) ;
372
+ let error = <& str >:: deserialize ( deserializer) . unwrap_err ( ) ;
373
+ assert_eq ! (
374
+ error. to_string( ) ,
375
+ "invalid type: u128, expected a borrowed string" ,
376
+ ) ;
352
377
}
353
378
354
379
#[ test]
0 commit comments