Vendor things
This commit is contained in:
parent
5deceec006
commit
977e3c17e5
19434 changed files with 10682014 additions and 0 deletions
79
third-party/vendor/toml_edit/tests/testsuite/convert.rs
vendored
Normal file
79
third-party/vendor/toml_edit/tests/testsuite/convert.rs
vendored
Normal file
|
|
@ -0,0 +1,79 @@
|
|||
use snapbox::assert_eq;
|
||||
|
||||
use toml_edit::{Document, Item, Value};
|
||||
|
||||
#[test]
|
||||
fn table_into_inline() {
|
||||
let toml = r#"
|
||||
[table]
|
||||
string = "value"
|
||||
array = [1, 2, 3]
|
||||
inline = { "1" = 1, "2" = 2 }
|
||||
|
||||
[table.child]
|
||||
other = "world"
|
||||
"#;
|
||||
let mut doc = toml.parse::<Document>().unwrap();
|
||||
|
||||
doc.get_mut("table").unwrap().make_value();
|
||||
|
||||
let actual = doc.to_string();
|
||||
// `table=` is because we didn't re-format the table key, only the value
|
||||
let expected = r#"table= { string = "value", array = [1, 2, 3], inline = { "1" = 1, "2" = 2 }, child = { other = "world" } }
|
||||
"#;
|
||||
assert_eq(expected, actual);
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn inline_table_to_table() {
|
||||
let toml = r#"table = { string = "value", array = [1, 2, 3], inline = { "1" = 1, "2" = 2 }, child = { other = "world" } }
|
||||
"#;
|
||||
let mut doc = toml.parse::<Document>().unwrap();
|
||||
|
||||
let t = doc.remove("table").unwrap();
|
||||
let t = match t {
|
||||
Item::Value(Value::InlineTable(t)) => t,
|
||||
_ => unreachable!("Unexpected {:?}", t),
|
||||
};
|
||||
let t = t.into_table();
|
||||
doc.insert("table", Item::Table(t));
|
||||
|
||||
let actual = doc.to_string();
|
||||
let expected = r#"[table]
|
||||
string = "value"
|
||||
array = [1, 2, 3]
|
||||
inline = { "1" = 1, "2" = 2 }
|
||||
child = { other = "world" }
|
||||
"#;
|
||||
assert_eq(expected, actual);
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn array_of_tables_to_array() {
|
||||
let toml = r#"
|
||||
[[table]]
|
||||
string = "value"
|
||||
array = [1, 2, 3]
|
||||
inline = { "1" = 1, "2" = 2 }
|
||||
|
||||
[table.child]
|
||||
other = "world"
|
||||
|
||||
[[table]]
|
||||
string = "value"
|
||||
array = [1, 2, 3]
|
||||
inline = { "1" = 1, "2" = 2 }
|
||||
|
||||
[table.child]
|
||||
other = "world"
|
||||
"#;
|
||||
let mut doc = toml.parse::<Document>().unwrap();
|
||||
|
||||
doc.get_mut("table").unwrap().make_value();
|
||||
|
||||
let actual = doc.to_string();
|
||||
// `table=` is because we didn't re-format the table key, only the value
|
||||
let expected = r#"table= [{ string = "value", array = [1, 2, 3], inline = { "1" = 1, "2" = 2 }, child = { other = "world" } }, { string = "value", array = [1, 2, 3], inline = { "1" = 1, "2" = 2 }, child = { other = "world" } }]
|
||||
"#;
|
||||
assert_eq(expected, actual);
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue