diff options
author | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-17 12:20:29 +0000 |
---|---|---|
committer | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-17 12:20:29 +0000 |
commit | 631cd5845e8de329d0e227aaa707d7ea228b8f8f (patch) | |
tree | a1b87c8f8cad01cf18f7c5f57a08f102771ed303 /vendor/basic-toml/tests/invalid-misc.rs | |
parent | Adding debian version 1.69.0+dfsg1-1. (diff) | |
download | rustc-631cd5845e8de329d0e227aaa707d7ea228b8f8f.tar.xz rustc-631cd5845e8de329d0e227aaa707d7ea228b8f8f.zip |
Merging upstream version 1.70.0+dfsg1.
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'vendor/basic-toml/tests/invalid-misc.rs')
-rw-r--r-- | vendor/basic-toml/tests/invalid-misc.rs | 48 |
1 files changed, 48 insertions, 0 deletions
diff --git a/vendor/basic-toml/tests/invalid-misc.rs b/vendor/basic-toml/tests/invalid-misc.rs new file mode 100644 index 000000000..a02bf045a --- /dev/null +++ b/vendor/basic-toml/tests/invalid-misc.rs @@ -0,0 +1,48 @@ +use serde_json::Value; + +macro_rules! bad { + ($toml:expr, $msg:expr) => { + match basic_toml::from_str::<Value>($toml) { + Ok(s) => panic!("parsed to: {:#?}", s), + Err(e) => assert_eq!(e.to_string(), $msg), + } + }; +} + +#[test] +fn bad() { + bad!("a = 01", "invalid number at line 1 column 6"); + bad!("a = 1__1", "invalid number at line 1 column 5"); + bad!("a = 1_", "invalid number at line 1 column 5"); + bad!("''", "expected an equals, found eof at line 1 column 3"); + bad!("a = 9e99999", "invalid number at line 1 column 5"); + + bad!( + "a = \"\u{7f}\"", + "invalid character in string: `\\u{7f}` at line 1 column 6" + ); + bad!( + "a = '\u{7f}'", + "invalid character in string: `\\u{7f}` at line 1 column 6" + ); + + bad!("a = -0x1", "invalid number at line 1 column 5"); + bad!("a = 0x-1", "invalid number at line 1 column 7"); + + // Dotted keys. + bad!( + "a.b.c = 1 + a.b = 2 + ", + "duplicate key: `b` for key `a` at line 2 column 12" + ); + bad!( + "a = 1 + a.b = 2", + "dotted key attempted to extend non-table type at line 1 column 5" + ); + bad!( + "a = {k1 = 1, k1.name = \"joe\"}", + "dotted key attempted to extend non-table type at line 1 column 11" + ); +} |