aboutsummaryrefslogtreecommitdiffstats
path: root/testing/tests/whitespace.rs
diff options
context:
space:
mode:
Diffstat (limited to 'testing/tests/whitespace.rs')
-rw-r--r--testing/tests/whitespace.rs24
1 files changed, 24 insertions, 0 deletions
diff --git a/testing/tests/whitespace.rs b/testing/tests/whitespace.rs
index 4793547..0e42f78 100644
--- a/testing/tests/whitespace.rs
+++ b/testing/tests/whitespace.rs
@@ -116,3 +116,27 @@ fn test_outer_whitespace() {
test_template!(" 1{# #} ", " 1 ");
test_template!("\n1{# #}\n\n\n", "\n1\n\n\n");
}
+
+macro_rules! test_template_ws_config {
+ ($config:literal, $ws:literal, $source:literal, $rendered: literal) => {{
+ #[derive(Template)]
+ #[template(source = $source, ext = "txt", config = $config, whitespace = $ws)]
+ struct CondWs;
+
+ assert_eq!(CondWs.render().unwrap(), $rendered);
+ }};
+}
+
+#[test]
+fn test_template_whitespace_config() {
+ test_template_ws_config!("test_trim.toml", "preserve", "\t1{# #}\t2", "\t1\t2");
+ test_template_ws_config!("test_trim.toml", "minimize", " 1{# #} 2", " 1 2");
+ test_template_ws_config!("test_trim.toml", "suppress", " 1{# #} 2", " 12");
+ test_template_ws_config!(
+ "test_minimize.toml",
+ "preserve",
+ "\n1{# #}\n\n\n2",
+ "\n1\n\n\n2"
+ );
+ test_template_ws_config!("test_minimize.toml", "suppress", "\n1{# #}\n\n\n2", "\n12");
+}