Skip to content

Commit 82c3eb7

Browse files
committed
Add test of visitor error messages
1 parent 8932c85 commit 82c3eb7

File tree

1 file changed

+25
-0
lines changed

1 file changed

+25
-0
lines changed

test_suite/tests/test_de_error.rs

+25
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
#![allow(clippy::empty_enum, clippy::unreadable_literal)]
22
#![cfg_attr(feature = "unstable", feature(never_type))]
33

4+
use serde::de::IntoDeserializer;
45
use serde::Deserialize;
56
use serde_test::{assert_de_tokens_error, Token};
67
use std::collections::{BTreeMap, BTreeSet, HashMap, HashSet};
@@ -185,6 +186,16 @@ fn test_i64() {
185186
);
186187
}
187188

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+
188199
#[test]
189200
fn test_u8() {
190201
let test = assert_de_tokens_error::<u8>;
@@ -326,6 +337,13 @@ fn test_u64() {
326337
&[Token::I64(-1)],
327338
"invalid value: integer `-1`, expected u64",
328339
);
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+
);
329347
}
330348

331349
#[test]
@@ -349,6 +367,13 @@ fn test_u128() {
349367
&[Token::I64(-1)],
350368
"invalid value: integer `-1`, expected u128",
351369
);
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+
);
352377
}
353378

354379
#[test]

0 commit comments

Comments
 (0)