hugo/hugolib/path_seperators_test.go

48 lines
1.2 KiB
Go
Raw Normal View History

2013-08-03 17:51:21 +00:00
package hugolib
import (
"path/filepath"
"strings"
2013-08-05 02:02:15 +00:00
"testing"
2013-08-03 17:51:21 +00:00
)
var SIMPLE_PAGE_YAML = `---
contenttype: ""
---
Sample Text
`
2013-08-03 17:51:21 +00:00
func TestDegenerateMissingFolderInPageFilename(t *testing.T) {
p, err := ReadFrom(strings.NewReader(SIMPLE_PAGE_YAML), filepath.Join("foobar"))
if err != nil {
t.Fatalf("Error in ReadFrom")
}
2013-08-05 02:02:15 +00:00
if p.Section != "" {
t.Fatalf("No section should be set for a file path: foobar")
}
}
func TestNewPageWithFilePath(t *testing.T) {
2013-08-05 02:02:15 +00:00
toCheck := []map[string]string{
{"input": filepath.Join("sub", "foobar.html"), "expect": "sub"},
{"input": filepath.Join("content", "sub", "foobar.html"), "expect": "sub"},
{"input": filepath.Join("content", "dub", "sub", "foobar.html"), "expect": "sub"},
}
for _, el := range toCheck {
p, err := ReadFrom(strings.NewReader(SIMPLE_PAGE_YAML), el["input"])
if err != nil {
t.Fatalf("Reading from SIMPLE_PAGE_YAML resulted in an error: %s", err)
}
2013-08-05 02:02:15 +00:00
if p.Section != el["expect"] {
t.Fatalf("Section not set to %s for page %s. Got: %s", el["expect"], el["input"], p.Section)
}
2013-08-03 17:51:21 +00:00
}
}
func TestSettingOutFileOnPageContainsCorrectSlashes(t *testing.T) {
s := &Site{Config: Config{}}
2013-08-03 17:51:21 +00:00
p := NewPage(filepath.Join("sub", "foobar"))
s.setOutFile(p)
}