mirror of
https://gitee.com/johng/gf
synced 2026-07-06 13:42:46 +08:00
新增go modules支持,自行管理第三方包依赖,方便开发者使用
This commit is contained in:
59
third/github.com/pierrec/lz4/reader_test.go
Normal file
59
third/github.com/pierrec/lz4/reader_test.go
Normal file
@ -0,0 +1,59 @@
|
||||
package lz4_test
|
||||
|
||||
import (
|
||||
"bytes"
|
||||
"io"
|
||||
"io/ioutil"
|
||||
"os"
|
||||
"reflect"
|
||||
"strings"
|
||||
"testing"
|
||||
|
||||
"gitee.com/johng/gf/third/github.com/pierrec/lz4"
|
||||
)
|
||||
|
||||
func TestReader(t *testing.T) {
|
||||
goldenFiles := []string{
|
||||
"testdata/e.txt.lz4",
|
||||
"testdata/gettysburg.txt.lz4",
|
||||
"testdata/Mark.Twain-Tom.Sawyer.txt.lz4",
|
||||
"testdata/pg1661.txt.lz4",
|
||||
"testdata/pi.txt.lz4",
|
||||
"testdata/random.data.lz4",
|
||||
"testdata/repeat.txt.lz4",
|
||||
}
|
||||
|
||||
for _, fname := range goldenFiles {
|
||||
t.Run(fname, func(t *testing.T) {
|
||||
fname := fname
|
||||
t.Parallel()
|
||||
|
||||
f, err := os.Open(fname)
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
defer f.Close()
|
||||
|
||||
rawfile := strings.TrimSuffix(fname, ".lz4")
|
||||
raw, err := ioutil.ReadFile(rawfile)
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
|
||||
var out bytes.Buffer
|
||||
zr := lz4.NewReader(f)
|
||||
n, err := io.Copy(&out, zr)
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
|
||||
if got, want := int(n), len(raw); got != want {
|
||||
t.Errorf("invalid sizes: got %d; want %d", got, want)
|
||||
}
|
||||
|
||||
if got, want := out.Bytes(), raw; !reflect.DeepEqual(got, want) {
|
||||
t.Fatal("uncompressed data does not match original")
|
||||
}
|
||||
})
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user