summaryrefslogtreecommitdiffstats
path: root/transform
diff options
context:
space:
mode:
authorBjørn Erik Pedersen <bjorn.erik.pedersen@gmail.com>2016-02-06 18:28:26 +0100
committerBjørn Erik Pedersen <bjorn.erik.pedersen@gmail.com>2016-02-06 18:28:26 +0100
commitdd1db334ac15f3bdb67b40973668d1d7b9ca7f08 (patch)
tree2bf53f06577643217670c5bc4cb08f2776371c50 /transform
parent96e990456b65c7744819000f67f226c34d487d99 (diff)
transform: Add missing test case in livereloadinject
* Test for both </body> and </BODY> * This also cosmetically changes the behaviour, as the case of the end body tag is kept.
Diffstat (limited to 'transform')
-rw-r--r--transform/livereloadinject.go11
-rw-r--r--transform/livereloadinject_test.go10
2 files changed, 16 insertions, 5 deletions
diff --git a/transform/livereloadinject.go b/transform/livereloadinject.go
index 789ff9d22..9eab45f78 100644
--- a/transform/livereloadinject.go
+++ b/transform/livereloadinject.go
@@ -15,15 +15,20 @@ package transform
import (
"bytes"
+ "fmt"
)
func LiveReloadInject(ct contentTransformer) {
- match := []byte("</body>")
- replace := []byte(`<script data-no-instant>document.write('<script src="/livereload.js?mindelay=10"></' + 'script>')</script></body>`)
+ endBodyTag := "</body>"
+ match := []byte(endBodyTag)
+ replaceTemplate := `<script data-no-instant>document.write('<script src="/livereload.js?mindelay=10"></' + 'script>')</script>%s`
+ replace := []byte(fmt.Sprintf(replaceTemplate, endBodyTag))
newcontent := bytes.Replace(ct.Content(), match, replace, -1)
if len(newcontent) == len(ct.Content()) {
- match := []byte("</BODY>")
+ endBodyTag = "</BODY>"
+ replace := []byte(fmt.Sprintf(replaceTemplate, endBodyTag))
+ match := []byte(endBodyTag)
newcontent = bytes.Replace(ct.Content(), match, replace, -1)
}
diff --git a/transform/livereloadinject_test.go b/transform/livereloadinject_test.go
index 0c47cb109..5aea8689c 100644
--- a/transform/livereloadinject_test.go
+++ b/transform/livereloadinject_test.go
@@ -15,18 +15,24 @@ package transform
import (
"bytes"
+ "fmt"
"github.com/spf13/hugo/helpers"
"testing"
)
func TestLiveReloadInject(t *testing.T) {
+ doTestLiveReloadInject(t, "</body>")
+ doTestLiveReloadInject(t, "</BODY>")
+}
+
+func doTestLiveReloadInject(t *testing.T, bodyEndTag string) {
out := new(bytes.Buffer)
- in := helpers.StringToReader("</body>")
+ in := helpers.StringToReader(bodyEndTag)
tr := NewChain(LiveReloadInject)
tr.Apply(out, in, []byte("path"))
- expected := `<script data-no-instant>document.write('<script src="/livereload.js?mindelay=10"></' + 'script>')</script></body>`
+ expected := fmt.Sprintf(`<script data-no-instant>document.write('<script src="/livereload.js?mindelay=10"></' + 'script>')</script>%s`, bodyEndTag)
if string(out.Bytes()) != expected {
t.Errorf("Expected %s got %s", expected, string(out.Bytes()))
}