mirror of
https://github.com/CrowCpp/Crow.git
synced 2024-06-07 21:10:44 +00:00
104 lines
2.4 KiB
YAML
104 lines
2.4 KiB
YAML
|
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'
|