aboutsummaryrefslogtreecommitdiffstats
path: root/tests/template/comments.yml
diff options
context:
space:
mode:
Diffstat (limited to 'tests/template/comments.yml')
-rw-r--r--tests/template/comments.yml103
1 files changed, 103 insertions, 0 deletions
diff --git a/tests/template/comments.yml b/tests/template/comments.yml
new file mode 100644
index 0000000..7b14c7f
--- /dev/null
+++ b/tests/template/comments.yml
@@ -0,0 +1,103 @@
+overview: |
+ Comment tags represent content that should never appear in the resulting
+ output.
+
+ The tag's content may contain any substring (including newlines) EXCEPT the
+ closing delimiter.
+
+ Comment tags SHOULD be treated as standalone when appropriate.
+tests:
+ - name: Inline
+ desc: Comment blocks should be removed from the template.
+ data: { }
+ template: '12345{{! Comment Block! }}67890'
+ expected: '1234567890'
+
+ - name: Multiline
+ desc: Multiline comments should be permitted.
+ data: { }
+ template: |
+ 12345{{!
+ This is a
+ multi-line comment...
+ }}67890
+ expected: |
+ 1234567890
+
+ - name: Standalone
+ desc: All standalone comment lines should be removed.
+ data: { }
+ template: |
+ Begin.
+ {{! Comment Block! }}
+ End.
+ expected: |
+ Begin.
+ End.
+
+ - name: Indented Standalone
+ desc: All standalone comment lines should be removed.
+ data: { }
+ template: |
+ Begin.
+ {{! Indented Comment Block! }}
+ End.
+ expected: |
+ Begin.
+ End.
+
+ - name: Standalone Line Endings
+ desc: '"\r\n" should be considered a newline for standalone tags.'
+ data: { }
+ template: "|\r\n{{! Standalone Comment }}\r\n|"
+ expected: "|\r\n|"
+
+ - name: Standalone Without Previous Line
+ desc: Standalone tags should not require a newline to precede them.
+ data: { }
+ template: " {{! I'm Still Standalone }}\n!"
+ expected: "!"
+
+ - name: Standalone Without Newline
+ desc: Standalone tags should not require a newline to follow them.
+ data: { }
+ template: "!\n {{! I'm Still Standalone }}"
+ expected: "!\n"
+
+ - name: Multiline Standalone
+ desc: All standalone comment lines should be removed.
+ data: { }
+ template: |
+ Begin.
+ {{!
+ Something's going on here...
+ }}
+ End.
+ expected: |
+ Begin.
+ End.
+
+ - name: Indented Multiline Standalone
+ desc: All standalone comment lines should be removed.
+ data: { }
+ template: |
+ Begin.
+ {{!
+ Something's going on here...
+ }}
+ End.
+ expected: |
+ Begin.
+ End.
+
+ - name: Indented Inline
+ desc: Inline comments should not strip whitespace
+ data: { }
+ template: " 12 {{! 34 }}\n"
+ expected: " 12 \n"
+
+ - name: Surrounding Whitespace
+ desc: Comment removal should preserve surrounding whitespace.
+ data: { }
+ template: '12345 {{! Comment Block! }} 67890'
+ expected: '12345 67890'