"bytes"
"fmt"
"github.com/spf13/hugo/source"
+ "github.com/spf13/hugo/target"
"html/template"
"strings"
"testing"
func TestSkipRender(t *testing.T) {
files := make(map[string][]byte)
- target := &InMemoryTarget{files: files}
+ target := &target.InMemoryTarget{Files: files}
sources := []source.ByteSource{
{"sect/doc1.html", []byte("---\nmarkup: markdown\n---\n# title\nsome *content*"), "sect"},
{"sect/doc2.html", []byte("<!doctype html><html><body>more content</body></html>"), "sect"},
}
for _, test := range tests {
- content, ok := target.files[test.doc]
+ content, ok := target.Files[test.doc]
if !ok {
- t.Fatalf("Did not find %s in target. %v", test.doc, target.files)
+ t.Fatalf("Did not find %s in target. %v", test.doc, target.Files)
}
if !bytes.Equal(content, []byte(test.expected)) {
func TestAbsUrlify(t *testing.T) {
files := make(map[string][]byte)
- target := &InMemoryTarget{files: files}
+ target := &target.InMemoryTarget{Files: files}
sources := []source.ByteSource{
{"sect/doc1.html", []byte("<!doctype html><html><head></head><body><a href=\"#frag1\">link</a></body></html>"), "sect"},
{"content/blue/doc2.html", []byte("---\nf: t\n---\n<!doctype html><html><body>more content</body></html>"), "blue"},
}
for _, test := range tests {
- content, ok := target.files[test.file]
+ content, ok := target.Files[test.file]
if !ok {
t.Fatalf("Unable to locate rendered content: %s", test.file)
}
package hugolib
import (
- "bytes"
"github.com/spf13/hugo/source"
"github.com/spf13/hugo/target"
"html/template"
- "io"
"testing"
)
return ret
}
-type InMemoryTarget struct {
- files map[string][]byte
-}
-
-func (t *InMemoryTarget) Publish(label string, reader io.Reader) (err error) {
- if t.files == nil {
- t.files = make(map[string][]byte)
- }
- bytes := new(bytes.Buffer)
- bytes.ReadFrom(reader)
- t.files[label] = bytes.Bytes()
- return
-}
-
-func (t *InMemoryTarget) Translate(label string) (dest string, err error) {
- return label, nil
-}
-
type InMemoryAliasTarget struct {
target.HTMLRedirectAlias
files map[string][]byte
func TestPageCount(t *testing.T) {
files := make(map[string][]byte)
- target := &InMemoryTarget{files: files}
+ target := &target.InMemoryTarget{Files: files}
alias := &InMemoryAliasTarget{files: files}
s := &Site{
Target: target,
t.Errorf("Unable to render site lists: %s", err)
}
- blueIndex := target.files["blue"]
+ blueIndex := target.Files["blue"]
if blueIndex == nil {
- t.Errorf("No indexed rendered. %v", target.files)
+ t.Errorf("No indexed rendered. %v", target.Files)
}
expected := "<html><head></head><body>..</body></html>"
"sd3/index.html",
"sd4.html",
} {
- if _, ok := target.files[s]; !ok {
+ if _, ok := target.Files[s]; !ok {
t.Errorf("No alias rendered: %s", s)
}
}
--- /dev/null
+package target
+
+import (
+ "io"
+ "bytes"
+)
+
+type InMemoryTarget struct {
+ Files map[string][]byte
+}
+
+func (t *InMemoryTarget) Publish(label string, reader io.Reader) (err error) {
+ if t.Files == nil {
+ t.Files = make(map[string][]byte)
+ }
+ bytes := new(bytes.Buffer)
+ bytes.ReadFrom(reader)
+ t.Files[label] = bytes.Bytes()
+ return
+}
+
+func (t *InMemoryTarget) Translate(label string) (dest string, err error) {
+ return label, nil
+}
+