diff options
author | SatowTakeshi <doublequotation@gmail.com> | 2020-02-29 12:44:05 +0300 |
---|---|---|
committer | Bjørn Erik Pedersen <bjorn.erik.pedersen@gmail.com> | 2020-03-20 22:35:57 +0300 |
commit | 574c2959b8d3338764fa1db102a5e0fd6ed322d9 (patch) | |
tree | 185d13348f474d1bb0bb2b0fbfd6bec9d11c8f5e /minifiers/minifiers_test.go | |
parent | 99958f90fedec11d749a1397300860aa8e8459c2 (diff) |
Add minify config
Fixes #6750
Updates #6892
Diffstat (limited to 'minifiers/minifiers_test.go')
-rw-r--r-- | minifiers/minifiers_test.go | 44 |
1 files changed, 41 insertions, 3 deletions
diff --git a/minifiers/minifiers_test.go b/minifiers/minifiers_test.go index 87e706320..64588f83c 100644 --- a/minifiers/minifiers_test.go +++ b/minifiers/minifiers_test.go @@ -23,11 +23,13 @@ import ( qt "github.com/frankban/quicktest" "github.com/gohugoio/hugo/output" + "github.com/spf13/viper" ) func TestNew(t *testing.T) { c := qt.New(t) - m := New(media.DefaultTypes, output.DefaultFormats) + v := viper.New() + m, _ := New(media.DefaultTypes, output.DefaultFormats, v) var rawJS string var minJS string @@ -73,9 +75,44 @@ func TestNew(t *testing.T) { } +func TestConfiguredMinify(t *testing.T) { + c := qt.New(t) + v := viper.New() + v.Set("minifiers", map[string]interface{}{ + "enablexml": false, + "tdewolff": map[string]interface{}{ + "html": map[string]interface{}{ + "keepwhitespace": true, + }, + }, + }) + m, _ := New(media.DefaultTypes, output.DefaultFormats, v) + + for _, test := range []struct { + tp media.Type + rawString string + expectedMinString string + errorExpected bool + }{ + {media.HTMLType, "<hello> Hugo! </hello>", "<hello> Hugo! </hello>", false}, // configured minifier + {media.CSSType, " body { color: blue; } ", "body{color:blue}", false}, // default minifier + {media.XMLType, " <hello> Hugo! </hello> ", "", true}, // disable Xml minificatin + } { + var b bytes.Buffer + if !test.errorExpected { + c.Assert(m.Minify(test.tp, &b, strings.NewReader(test.rawString)), qt.IsNil) + c.Assert(b.String(), qt.Equals, test.expectedMinString) + } else { + err := m.Minify(test.tp, &b, strings.NewReader(test.rawString)) + c.Assert(err, qt.ErrorMatches, "minifier does not exist for mimetype") + } + } +} + func TestJSONRoundTrip(t *testing.T) { c := qt.New(t) - m := New(media.DefaultTypes, output.DefaultFormats) + v := viper.New() + m, _ := New(media.DefaultTypes, output.DefaultFormats, v) for _, test := range []string{`{ "glossary": { @@ -113,7 +150,8 @@ func TestJSONRoundTrip(t *testing.T) { func TestBugs(t *testing.T) { c := qt.New(t) - m := New(media.DefaultTypes, output.DefaultFormats) + v := viper.New() + m, _ := New(media.DefaultTypes, output.DefaultFormats, v) for _, test := range []struct { tp media.Type |