diff options
author | Noah Campbell <noahcampbell@gmail.com> | 2013-09-04 22:28:59 -0700 |
---|---|---|
committer | Noah Campbell <noahcampbell@gmail.com> | 2013-09-04 22:42:52 -0700 |
commit | 610c06e6589770d950d8fd4e01efd90b132fcff5 (patch) | |
tree | 859f0cb1ce70875175d3910e4ccd05fdd8173393 /source/filesystem_test.go | |
parent | d4d9da9f3a6358e8325d0c3f973a5842ef3be039 (diff) | |
download | hugo-610c06e6589770d950d8fd4e01efd90b132fcff5.tar.gz hugo-610c06e6589770d950d8fd4e01efd90b132fcff5.zip |
Introduce source.Filesystem
This provides an abstraction over how files are processed by Hugo. This
allows for alternatives like CMS systems or Dropbox, etc.
Diffstat (limited to 'source/filesystem_test.go')
-rw-r--r-- | source/filesystem_test.go | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/source/filesystem_test.go b/source/filesystem_test.go new file mode 100644 index 000000000..2aac9b0dc --- /dev/null +++ b/source/filesystem_test.go @@ -0,0 +1,32 @@ +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()) + } +} |