aboutsummaryrefslogtreecommitdiffhomepage
path: root/replacer_test.go
diff options
context:
space:
mode:
authorSteffen Busch <[email protected]>2024-08-07 21:39:15 +0200
committerGitHub <[email protected]>2024-08-07 19:39:15 +0000
commitb85b6c64690dc75fd3096e452dbf8881456d0da7 (patch)
tree8e60c2f9fdcbaa56558a08f8c9323c9618ffb496 /replacer_test.go
parent59cbb2c83a03b6fe352ae0b5d05581d9148a4d24 (diff)
downloadcaddy-b85b6c64690dc75fd3096e452dbf8881456d0da7.tar.gz
caddy-b85b6c64690dc75fd3096e452dbf8881456d0da7.zip
replacer: `{file.*}` global placeholder strips trailing newline (#6411)
Co-authored-by: Kanashimia <[email protected]>
Diffstat (limited to 'replacer_test.go')
-rw-r--r--replacer_test.go15
1 files changed, 15 insertions, 0 deletions
diff --git a/replacer_test.go b/replacer_test.go
index cf4d321b6..1c1a7048f 100644
--- a/replacer_test.go
+++ b/replacer_test.go
@@ -431,6 +431,14 @@ func TestReplacerNew(t *testing.T) {
variable: "file.caddytest/integration/testdata/foo.txt",
value: "foo",
},
+ {
+ variable: "file.caddytest/integration/testdata/foo_with_trailing_newline.txt",
+ value: "foo",
+ },
+ {
+ variable: "file.caddytest/integration/testdata/foo_with_multiple_trailing_newlines.txt",
+ value: "foo" + getEOL(),
+ },
} {
if val, ok := repl.providers[1].replace(tc.variable); ok {
if val != tc.value {
@@ -442,6 +450,13 @@ func TestReplacerNew(t *testing.T) {
}
}
+func getEOL() string {
+ if os.PathSeparator == '\\' {
+ return "\r\n" // Windows EOL
+ }
+ return "\n" // Unix and modern macOS EOL
+}
+
func TestReplacerNewWithoutFile(t *testing.T) {
repl := NewReplacer().WithoutFile()