summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--hugolib/resource_chain_test.go9
-rw-r--r--minifiers/config.go2
-rw-r--r--minifiers/minifiers_test.go29
-rw-r--r--resources/resource_transformers/minifier/minify_test.go2
4 files changed, 40 insertions, 2 deletions
diff --git a/hugolib/resource_chain_test.go b/hugolib/resource_chain_test.go
index a367237ab..834fe4357 100644
--- a/hugolib/resource_chain_test.go
+++ b/hugolib/resource_chain_test.go
@@ -456,6 +456,10 @@ func TestResourceChainPostProcess(t *testing.T) {
rnd := rand.New(rand.NewSource(time.Now().UnixNano()))
b := newTestSitesBuilder(t)
+ b.WithConfigFile("toml", `[minify]
+ [minify.tdewolff]
+ [minify.tdewolff.html]
+ keepWhitespace = false`)
b.WithContent("page1.md", "---\ntitle: Page1\n---")
b.WithContent("page2.md", "---\ntitle: Page2\n---")
@@ -562,6 +566,11 @@ T6: {{ $bundle1.Permalink }}
}},
{"minify", func() bool { return true }, func(b *sitesBuilder) {
+ b.WithConfigFile("toml", `[minify]
+ [minify.tdewolff]
+ [minify.tdewolff.html]
+ keepWhitespace = false
+`)
b.WithTemplates("home.html", `
Min CSS: {{ ( resources.Get "css/styles1.css" | minify ).Content }}
Min JS: {{ ( resources.Get "js/script1.js" | resources.Minify ).Content | safeJS }}
diff --git a/minifiers/config.go b/minifiers/config.go
index 675e5d2b8..e56617a06 100644
--- a/minifiers/config.go
+++ b/minifiers/config.go
@@ -35,7 +35,7 @@ var defaultTdewolffConfig = tdewolffConfig{
KeepConditionalComments: true,
KeepEndTags: true,
KeepDefaultAttrVals: true,
- KeepWhitespace: false,
+ KeepWhitespace: true,
},
CSS: css.Minifier{
Precision: 0,
diff --git a/minifiers/minifiers_test.go b/minifiers/minifiers_test.go
index 37e017420..81edba510 100644
--- a/minifiers/minifiers_test.go
+++ b/minifiers/minifiers_test.go
@@ -23,6 +23,7 @@ import (
"github.com/gohugoio/hugo/config"
"github.com/gohugoio/hugo/media"
"github.com/gohugoio/hugo/output"
+ "github.com/tdewolff/minify/v2/html"
)
func TestNew(t *testing.T) {
@@ -189,3 +190,31 @@ func TestDecodeConfigDecimalIsNowPrecision(t *testing.T) {
c.Assert(conf.Tdewolff.CSS.Precision, qt.Equals, 3)
}
+
+// Issue 8771
+func TestDecodeConfigKeepWhitespace(t *testing.T) {
+ c := qt.New(t)
+ v := config.New()
+ v.Set("minify", map[string]interface{}{
+ "tdewolff": map[string]interface{}{
+ "html": map[string]interface{}{
+ "keepEndTags": false,
+ },
+ },
+ })
+
+ conf, err := decodeConfig(v)
+
+ c.Assert(err, qt.IsNil)
+ c.Assert(conf.Tdewolff.HTML, qt.DeepEquals,
+ html.Minifier{
+ KeepComments: false,
+ KeepConditionalComments: true,
+ KeepDefaultAttrVals: true,
+ KeepDocumentTags: true,
+ KeepEndTags: false,
+ KeepQuotes: false,
+ KeepWhitespace: true},
+ )
+
+}
diff --git a/resources/resource_transformers/minifier/minify_test.go b/resources/resource_transformers/minifier/minify_test.go
index b0ebe3171..cc5f7af41 100644
--- a/resources/resource_transformers/minifier/minify_test.go
+++ b/resources/resource_transformers/minifier/minify_test.go
@@ -38,5 +38,5 @@ func TestTransform(t *testing.T) {
c.Assert(transformed.RelPermalink(), qt.Equals, "/hugo.min.html")
content, err := transformed.(resource.ContentProvider).Content()
c.Assert(err, qt.IsNil)
- c.Assert(content, qt.Equals, "<h1>Hugo Rocks!</h1>")
+ c.Assert(content, qt.Equals, "<h1> Hugo Rocks! </h1>")
}