diff options
author | Bjørn Erik Pedersen <[email protected]> | 2017-02-05 10:20:06 +0700 |
---|---|---|
committer | Bjørn Erik Pedersen <[email protected]> | 2017-02-17 17:15:26 +0100 |
commit | 93ca7c9e958e34469a337e4efcc7c75774ec50fd (patch) | |
tree | 5dfa296cfe74fd5ef8f0d41ea4078704f453aa04 /create/content_test.go | |
parent | e34af6ee30f70f5780a281e2fd8f4ed9b487ee61 (diff) | |
download | hugo-93ca7c9e958e34469a337e4efcc7c75774ec50fd.tar.gz hugo-93ca7c9e958e34469a337e4efcc7c75774ec50fd.zip |
all: Refactor to nonglobal Viper, i18n etc.
This is a final rewrite that removes all the global state in Hugo, which also enables
the use if `t.Parallel` in tests.
Updates #2701
Fixes #3016
Diffstat (limited to 'create/content_test.go')
-rw-r--r-- | create/content_test.go | 43 |
1 files changed, 31 insertions, 12 deletions
diff --git a/create/content_test.go b/create/content_test.go index fcfecff10..4ef230202 100644 --- a/create/content_test.go +++ b/create/content_test.go @@ -19,6 +19,8 @@ import ( "strings" "testing" + "github.com/spf13/hugo/deps" + "github.com/spf13/hugo/hugolib" "fmt" @@ -33,7 +35,8 @@ import ( ) func TestNewContent(t *testing.T) { - initViper() + v := viper.New() + initViper(v) cases := []struct { kind string @@ -48,14 +51,17 @@ func TestNewContent(t *testing.T) { } for _, c := range cases { - s, err := hugolib.NewEnglishSiteMem() + cfg, fs := newTestCfg() + h, err := hugolib.NewHugoSites(deps.DepsCfg{Cfg: cfg, Fs: fs}) require.NoError(t, err) - require.NoError(t, initFs(s.Fs)) + require.NoError(t, initFs(fs)) + + s := h.Sites[0] require.NoError(t, create.NewContent(s, c.kind, c.path)) fname := filepath.Join("content", filepath.FromSlash(c.path)) - content := readFileFromFs(t, s.Fs.Source, fname) + content := readFileFromFs(t, fs.Source, fname) for i, v := range c.expected { found := strings.Contains(content, v) if !found { @@ -65,14 +71,14 @@ func TestNewContent(t *testing.T) { } } -func initViper() { - viper.Reset() - viper.Set("metaDataFormat", "toml") - viper.Set("archetypeDir", "archetypes") - viper.Set("contentDir", "content") - viper.Set("themesDir", "themes") - viper.Set("layoutDir", "layouts") - viper.Set("theme", "sample") +func initViper(v *viper.Viper) { + v.Set("metaDataFormat", "toml") + v.Set("archetypeDir", "archetypes") + v.Set("contentDir", "content") + v.Set("themesDir", "themes") + v.Set("layoutDir", "layouts") + v.Set("i18nDir", "i18n") + v.Set("theme", "sample") } func initFs(fs *hugofs.Fs) error { @@ -143,3 +149,16 @@ func readFileFromFs(t *testing.T, fs afero.Fs, filename string) string { } return string(b) } + +func newTestCfg() (*viper.Viper, *hugofs.Fs) { + + v := viper.New() + fs := hugofs.NewMem(v) + + v.SetFs(fs.Source) + + initViper(v) + + return v, fs + +} |