ref: 9a83f7a01b1fe79e603c3eb78d380614e5e00ba7
parent: 62dd1d45c12193ac5ad95a4f491dfcdbcad7be7a
author: spf13 <[email protected]>
date: Mon Apr 7 07:44:13 EDT 2014
Fixing all tests to pass with new Viper Config
--- a/commands/hugo.go
+++ b/commands/hugo.go
@@ -80,7 +80,7 @@
}
func InitializeConfig() {
- viper.SetConfigName(CfgFile) // config
+ viper.SetConfigName(CfgFile)
viper.AddConfigPath(Source)
viper.ReadInConfig()
--- a/hugolib/page_permalink_test.go
+++ b/hugolib/page_permalink_test.go
@@ -3,6 +3,8 @@
import (
"html/template"
"testing"
+
+ "github.com/spf13/viper"
)
func TestPermalink(t *testing.T) {
@@ -32,6 +34,7 @@
}
for _, test := range tests {
+ viper.Set("uglyurls", test.uglyurls)
p := &Page{
Node: Node{
UrlPath: UrlPath{
@@ -40,9 +43,6 @@
},
Site: SiteInfo{
BaseUrl: test.base,
- Config: &Config{
- UglyUrls: test.uglyurls,
- },
},
},
File: File{FileName: test.file, Dir: test.dir, Extension: "html"},
--- a/hugolib/rss_test.go
+++ b/hugolib/rss_test.go
@@ -2,9 +2,11 @@
import (
"bytes"
+ "testing"
+
"github.com/spf13/hugo/source"
"github.com/spf13/hugo/target"
- "testing"
+ "github.com/spf13/viper"
)
const RSS_TEMPLATE = `<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
@@ -31,9 +33,9 @@
func TestRSSOutput(t *testing.T) {
files := make(map[string][]byte)
target := &target.InMemoryTarget{Files: files}
+ viper.Set("baseurl", "http://auth/bub/")
s := &Site{
Target: target,
- Config: Config{BaseUrl: "http://auth/bub/"},
Source: &source.InMemorySource{ByteSource: WEIGHTED_SOURCES},
}
s.initializeSiteInfo()
--- a/hugolib/site_test.go
+++ b/hugolib/site_test.go
@@ -3,12 +3,15 @@
import (
"bytes"
"fmt"
- "github.com/spf13/hugo/source"
- "github.com/spf13/hugo/target"
"html/template"
"io"
"strings"
"testing"
+
+ "github.com/spf13/hugo/helpers"
+ "github.com/spf13/hugo/source"
+ "github.com/spf13/hugo/target"
+ "github.com/spf13/viper"
)
const (
@@ -200,11 +203,9 @@
if true {
return
}
+
for _, test := range tests {
- s := &Site{
- Config: Config{ContentDir: "content"},
- }
- p := pageMust(ReadFrom(strings.NewReader(test.content), s.Config.GetAbsPath(test.doc)))
+ p := pageMust(ReadFrom(strings.NewReader(test.content), helpers.AbsPathify(test.doc)))
expected := test.expectedOutFile
@@ -232,13 +233,11 @@
{"sect/doc8.html", []byte("---\nmarkup: md\n---\n# title\nsome *content*"), "sect"},
}
+ viper.Set("verbose", true)
+ viper.Set("CanonifyUrls", true)
+ viper.Set("baseurl", "http://auth/bub")
s := &Site{
Target: target,
- Config: Config{
- Verbose: true,
- BaseUrl: "http://auth/bub",
- CanonifyUrls: true,
- },
Source: &source.InMemorySource{ByteSource: sources},
}
@@ -295,15 +294,13 @@
{"content/blue/doc2.html", []byte("---\nf: t\n---\n<!doctype html><html><body>more content</body></html>"), "blue"},
}
for _, canonify := range []bool{true, false} {
+ viper.Set("CanonifyUrls", canonify)
+ viper.Set("BaseUrl", "http://auth/bub")
s := &Site{
Target: target,
- Config: Config{
- BaseUrl: "http://auth/bub",
- CanonifyUrls: canonify,
- },
Source: &source.InMemorySource{ByteSource: sources},
}
- t.Logf("Rendering with BaseUrl %q and CanonifyUrls set %v", s.Config.BaseUrl, canonify)
+ t.Logf("Rendering with BaseUrl %q and CanonifyUrls set %v", viper.GetString("baseUrl"), canonify)
s.initializeSiteInfo()
s.prepTemplates()
must(s.addTemplate("blue/single.html", TEMPLATE_WITH_URL_ABS))
@@ -335,7 +332,7 @@
expected := test.expected
if !canonify {
- expected = strings.Replace(expected, s.Config.BaseUrl, "", -1)
+ expected = strings.Replace(expected, viper.GetString("baseurl"), "", -1)
}
if string(content) != expected {
t.Errorf("AbsUrlify content expected:\n%q\ngot\n%q", expected, string(content))
@@ -380,9 +377,10 @@
func TestOrderedPages(t *testing.T) {
files := make(map[string][]byte)
target := &target.InMemoryTarget{Files: files}
+
+ viper.Set("baseurl", "http://auth/bub")
s := &Site{
Target: target,
- Config: Config{BaseUrl: "http://auth/bub/"},
Source: &source.InMemorySource{ByteSource: WEIGHTED_SOURCES},
}
s.initializeSiteInfo()
@@ -466,9 +464,11 @@
indexes["tag"] = "tags"
indexes["category"] = "categories"
+
+ viper.Set("baseurl", "http://auth/bub")
+ viper.Set("indexes", indexes)
s := &Site{
Target: target,
- Config: Config{BaseUrl: "http://auth/bub/", Indexes: indexes},
Source: &source.InMemorySource{ByteSource: sources},
}
s.initializeSiteInfo()
--- a/hugolib/site_url_test.go
+++ b/hugolib/site_url_test.go
@@ -1,10 +1,12 @@
package hugolib
import (
- "github.com/spf13/hugo/source"
- "github.com/spf13/hugo/target"
"html/template"
"testing"
+
+ "github.com/spf13/hugo/source"
+ "github.com/spf13/hugo/target"
+ "github.com/spf13/viper"
)
const SLUG_DOC_1 = "---\ntitle: slug doc 1\nslug: slug-doc-1\naliases:\n - sd1/foo/\n - sd2\n - sd3/\n - sd4.html\n---\nslug doc 1 content\n"
@@ -51,10 +53,11 @@
files := make(map[string][]byte)
target := &target.InMemoryTarget{Files: files}
alias := &InMemoryAliasTarget{files: files}
+
+ viper.Set("uglyurls", false)
s := &Site{
Target: target,
Alias: alias,
- Config: Config{UglyUrls: false},
Source: &source.InMemorySource{ByteSource: urlFakeSource},
}
s.initializeSiteInfo()
--- a/hugolib/siteinfo_test.go
+++ b/hugolib/siteinfo_test.go
@@ -3,14 +3,15 @@
import (
"bytes"
"testing"
+
+ "github.com/spf13/viper"
)
const SITE_INFO_PARAM_TEMPLATE = `{{ .Site.Params.MyGlobalParam }}`
func TestSiteInfoParams(t *testing.T) {
- s := &Site{
- Config: Config{Params: map[string]interface{}{"MyGlobalParam": "FOOBAR_PARAM"}},
- }
+ viper.Set("Params", map[string]interface{}{"MyGlobalParam": "FOOBAR_PARAM"})
+ s := &Site{}
s.initialize()
if s.Info.Params["MyGlobalParam"] != "FOOBAR_PARAM" {