Files
dolt/enc/blob_leaf_codec_test.go
T
2015-08-26 14:05:40 -07:00

45 lines
1.0 KiB
Go

package enc
import (
"bytes"
"io"
"io/ioutil"
"testing"
"github.com/attic-labs/noms/Godeps/_workspace/src/github.com/stretchr/testify/assert"
)
func TestBlobLeafEncode(t *testing.T) {
assert := assert.New(t)
src := &bytes.Buffer{}
dst := &bytes.Buffer{}
blobLeafEncode(dst, src)
assert.EqualValues(blobTag, dst.Bytes())
content := []byte("Hello, World!")
src = bytes.NewBuffer(content)
dst = &bytes.Buffer{}
blobLeafEncode(dst, src)
assert.EqualValues(append(blobTag, content...), dst.Bytes())
}
func TestBlobLeafDecode(t *testing.T) {
assert := assert.New(t)
out := &bytes.Buffer{}
inputReader := bytes.NewReader(blobTag)
decoded := blobLeafDecode(inputReader)
data, err := ioutil.ReadAll(decoded)
assert.NoError(err)
assert.EqualValues([]byte{}, data)
out.Truncate(0)
content := []byte("Hello, World!")
inputReader = bytes.NewReader(append(blobTag, content...))
decoded = blobLeafDecode(inputReader)
_, err = io.Copy(out, decoded)
assert.NoError(err)
assert.EqualValues(content, out.Bytes())
}