mirror of
https://github.com/gohugoio/hugo.git
synced 2024-11-21 20:46:30 -05:00
610c06e658
This provides an abstraction over how files are processed by Hugo. This allows for alternatives like CMS systems or Dropbox, etc.
32 lines
643 B
Go
32 lines
643 B
Go
package source
|
|
|
|
import (
|
|
"bytes"
|
|
"testing"
|
|
)
|
|
|
|
func TestEmptySourceFilesystem(t *testing.T) {
|
|
src := new(Filesystem)
|
|
if len(src.Files()) != 0 {
|
|
t.Errorf("new filesystem should contain 0 files.")
|
|
}
|
|
}
|
|
|
|
func TestAddFile(t *testing.T) {
|
|
src := new(Filesystem)
|
|
src.add("foobar", bytes.NewReader([]byte("aaa")))
|
|
if len(src.Files()) != 1 {
|
|
t.Errorf("Files() should return 1 file")
|
|
}
|
|
|
|
f := src.Files()[0]
|
|
if f.Name != "foobar" {
|
|
t.Errorf("File name should be 'foobar', got: %s", f.Name)
|
|
}
|
|
|
|
b := new(bytes.Buffer)
|
|
b.ReadFrom(f.Contents)
|
|
if b.String() != "aaa" {
|
|
t.Errorf("File contents should be 'aaa', got: %s", b.String())
|
|
}
|
|
}
|