helpers: Remove ToReader funcs

Remove StringToReader and BytesToReader in favor of using the stdlib directly.
This commit is contained in:
Cameron Moore 2016-05-07 16:34:53 -05:00
parent 29ca323a34
commit e2aea65170
6 changed files with 18 additions and 38 deletions

View file

@ -130,16 +130,6 @@ func ReaderToString(lines io.Reader) string {
return b.String() return b.String()
} }
// StringToReader does the opposite of ReaderToString.
func StringToReader(in string) io.Reader {
return strings.NewReader(in)
}
// BytesToReader does the opposite of ReaderToBytes.
func BytesToReader(in []byte) io.Reader {
return bytes.NewReader(in)
}
// ReaderContains reports whether subslice is within r. // ReaderContains reports whether subslice is within r.
func ReaderContains(r io.Reader, subslice []byte) bool { func ReaderContains(r io.Reader, subslice []byte) bool {

View file

@ -14,10 +14,11 @@
package helpers package helpers
import ( import (
"github.com/stretchr/testify/assert"
"reflect" "reflect"
"strings" "strings"
"testing" "testing"
"github.com/stretchr/testify/assert"
) )
func TestGuessType(t *testing.T) { func TestGuessType(t *testing.T) {
@ -62,20 +63,6 @@ func TestFirstUpper(t *testing.T) {
} }
} }
func TestBytesToReader(t *testing.T) {
asBytes := ReaderToBytes(strings.NewReader("Hello World!"))
asReader := BytesToReader(asBytes)
assert.Equal(t, []byte("Hello World!"), asBytes)
assert.Equal(t, asBytes, ReaderToBytes(asReader))
}
func TestStringToReader(t *testing.T) {
asString := ReaderToString(strings.NewReader("Hello World!"))
assert.Equal(t, "Hello World!", asString)
asReader := StringToReader(asString)
assert.Equal(t, asString, ReaderToString(asReader))
}
var containsTestText = (`На берегу пустынных волн var containsTestText = (`На берегу пустынных волн
Стоял он, дум великих полн, Стоял он, дум великих полн,
И вдаль глядел. Пред ним широко И вдаль глядел. Пред ним широко
@ -136,7 +123,7 @@ var containsAdditionalTestData = []struct {
func TestReaderContains(t *testing.T) { func TestReaderContains(t *testing.T) {
for i, this := range append(containsBenchTestData, containsAdditionalTestData...) { for i, this := range append(containsBenchTestData, containsAdditionalTestData...) {
result := ReaderContains(StringToReader(this.v1), this.v2) result := ReaderContains(strings.NewReader(this.v1), this.v2)
if result != this.expect { if result != this.expect {
t.Errorf("[%d] got %t but expected %t", i, result, this.expect) t.Errorf("[%d] got %t but expected %t", i, result, this.expect)
} }
@ -150,7 +137,7 @@ func BenchmarkReaderContains(b *testing.B) {
b.ResetTimer() b.ResetTimer()
for i := 0; i < b.N; i++ { for i := 0; i < b.N; i++ {
for i, this := range containsBenchTestData { for i, this := range containsBenchTestData {
result := ReaderContains(StringToReader(this.v1), this.v2) result := ReaderContains(strings.NewReader(this.v1), this.v2)
if result != this.expect { if result != this.expect {
b.Errorf("[%d] got %t but expected %t", i, result, this.expect) b.Errorf("[%d] got %t but expected %t", i, result, this.expect)
} }

View file

@ -14,8 +14,9 @@
package hugolib package hugolib
import ( import (
"bytes"
"github.com/dchest/cssmin" "github.com/dchest/cssmin"
"github.com/spf13/hugo/helpers"
"github.com/spf13/hugo/source" "github.com/spf13/hugo/source"
"github.com/spf13/hugo/tpl" "github.com/spf13/hugo/tpl"
) )
@ -48,6 +49,6 @@ type cssHandler struct{ basicFileHandler }
func (h cssHandler) Extensions() []string { return []string{"css"} } func (h cssHandler) Extensions() []string { return []string{"css"} }
func (h cssHandler) FileConvert(f *source.File, s *Site) HandledResult { func (h cssHandler) FileConvert(f *source.File, s *Site) HandledResult {
x := cssmin.Minify(f.Bytes()) x := cssmin.Minify(f.Bytes())
s.writeDestFile(f.Path(), helpers.BytesToReader(x)) s.writeDestFile(f.Path(), bytes.NewReader(x))
return HandledResult{file: f} return HandledResult{file: f}
} }

View file

@ -14,9 +14,10 @@
package source package source
import ( import (
"github.com/spf13/hugo/helpers" "strings"
"github.com/stretchr/testify/assert"
"testing" "testing"
"github.com/stretchr/testify/assert"
) )
func TestFileUniqueID(t *testing.T) { func TestFileUniqueID(t *testing.T) {
@ -28,11 +29,11 @@ func TestFileUniqueID(t *testing.T) {
} }
func TestFileString(t *testing.T) { func TestFileString(t *testing.T) {
assert.Equal(t, "abc", NewFileWithContents("a", helpers.StringToReader("abc")).String()) assert.Equal(t, "abc", NewFileWithContents("a", strings.NewReader("abc")).String())
assert.Equal(t, "", NewFile("a").String()) assert.Equal(t, "", NewFile("a").String())
} }
func TestFileBytes(t *testing.T) { func TestFileBytes(t *testing.T) {
assert.Equal(t, []byte("abc"), NewFileWithContents("a", helpers.StringToReader("abc")).Bytes()) assert.Equal(t, []byte("abc"), NewFileWithContents("a", strings.NewReader("abc")).Bytes())
assert.Equal(t, []byte(""), NewFile("a").Bytes()) assert.Equal(t, []byte(""), NewFile("a").Bytes())
} }

View file

@ -15,11 +15,12 @@ package transform
import ( import (
"bytes" "bytes"
"github.com/spf13/hugo/helpers"
"github.com/stretchr/testify/assert"
"path/filepath" "path/filepath"
"strings" "strings"
"testing" "testing"
"github.com/spf13/hugo/helpers"
"github.com/stretchr/testify/assert"
) )
const ( const (
@ -148,7 +149,7 @@ func TestChaingMultipleTransformers(t *testing.T) {
tr := NewChain(f1, f2, f3, f4) tr := NewChain(f1, f2, f3, f4)
out := new(bytes.Buffer) out := new(bytes.Buffer)
if err := tr.Apply(out, helpers.StringToReader("Test: f4 f3 f1 f2 f1 The End."), []byte("")); err != nil { if err := tr.Apply(out, strings.NewReader("Test: f4 f3 f1 f2 f1 The End."), []byte("")); err != nil {
t.Errorf("Multi transformer chain returned an error: %s", err) t.Errorf("Multi transformer chain returned an error: %s", err)
} }

View file

@ -16,7 +16,7 @@ package transform
import ( import (
"bytes" "bytes"
"fmt" "fmt"
"github.com/spf13/hugo/helpers" "strings"
"testing" "testing"
) )
@ -27,7 +27,7 @@ func TestLiveReloadInject(t *testing.T) {
func doTestLiveReloadInject(t *testing.T, bodyEndTag string) { func doTestLiveReloadInject(t *testing.T, bodyEndTag string) {
out := new(bytes.Buffer) out := new(bytes.Buffer)
in := helpers.StringToReader(bodyEndTag) in := strings.NewReader(bodyEndTag)
tr := NewChain(LiveReloadInject) tr := NewChain(LiveReloadInject)
tr.Apply(out, in, []byte("path")) tr.Apply(out, in, []byte("path"))