aboutsummaryrefslogtreecommitdiff
path: root/test-suite/tests/formatting.rs
diff options
context:
space:
mode:
authorAlex Crichton <alex@alexcrichton.com>2017-11-20 13:39:31 -0600
committerGitHub <noreply@github.com>2017-11-20 13:39:31 -0600
commit823d1f58305113b38d62eba7e87dc3f4097acbac (patch)
tree38d92a55f2bde9b02fe4cfb78dd9c8f6f29ee9e3 /test-suite/tests/formatting.rs
parent3b77b5fb6520c7bf13be6308978efa8a185d0c12 (diff)
parentd53db5c5335fb73389e5a78c190bf2a1903f3b6a (diff)
downloadmilf-rs-823d1f58305113b38d62eba7e87dc3f4097acbac.tar.gz
milf-rs-823d1f58305113b38d62eba7e87dc3f4097acbac.zip
Merge pull request #217 from dtolnay/macro
A toml macro
Diffstat (limited to 'test-suite/tests/formatting.rs')
-rw-r--r--test-suite/tests/formatting.rs54
1 files changed, 54 insertions, 0 deletions
diff --git a/test-suite/tests/formatting.rs b/test-suite/tests/formatting.rs
new file mode 100644
index 0000000..4ba1418
--- /dev/null
+++ b/test-suite/tests/formatting.rs
@@ -0,0 +1,54 @@
+#[macro_use]
+extern crate serde_derive;
+extern crate toml;
+
+use toml::to_string;
+
+#[derive(Debug, Clone, Hash, PartialEq, Eq, Serialize, Deserialize)]
+struct User {
+ pub name: String,
+ pub surname: String,
+}
+
+#[derive(Debug, Clone, Hash, PartialEq, Eq, Serialize, Deserialize)]
+struct Users {
+ pub user: Vec<User>,
+}
+
+#[derive(Debug, Clone, Hash, PartialEq, Eq, Serialize, Deserialize)]
+struct TwoUsers {
+ pub user0: User,
+ pub user1: User,
+}
+
+#[test]
+fn no_unnecessary_newlines_array() {
+ assert!(!to_string(&Users {
+ user: vec![
+ User {
+ name: "John".to_string(),
+ surname: "Doe".to_string(),
+ },
+ User {
+ name: "Jane".to_string(),
+ surname: "Dough".to_string(),
+ },
+ ],
+ }).unwrap()
+ .starts_with("\n"));
+}
+
+#[test]
+fn no_unnecessary_newlines_table() {
+ assert!(!to_string(&TwoUsers {
+ user0: User {
+ name: "John".to_string(),
+ surname: "Doe".to_string(),
+ },
+ user1: User {
+ name: "Jane".to_string(),
+ surname: "Dough".to_string(),
+ },
+ }).unwrap()
+ .starts_with("\n"));
+}