123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103 |
- 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'
|