aboutsummaryrefslogtreecommitdiffstats
path: root/testing/tests/whitespace.rs
diff options
context:
space:
mode:
authorLibravatar Guillaume Gomez <guillaume1.gomez@gmail.com>2023-03-07 12:14:07 +0100
committerLibravatar Dirkjan Ochtman <dirkjan@ochtman.nl>2023-03-13 14:41:05 +0100
commit40be079d5d0ea988303cd70034d11c92fbb8fa39 (patch)
treede3ddcb2ec3a3c11d521e6bc5568f3ec2c8e546a /testing/tests/whitespace.rs
parent3ea521d6e88150dd4307ad610cabfe0fb8f30f9d (diff)
downloadaskama-40be079d5d0ea988303cd70034d11c92fbb8fa39.tar.gz
askama-40be079d5d0ea988303cd70034d11c92fbb8fa39.tar.bz2
askama-40be079d5d0ea988303cd70034d11c92fbb8fa39.zip
Add tests for whitespace argument in template derive proc-macro
Diffstat (limited to '')
-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");
+}