From df34e930bd2c32f46a385455479a094e46a6f2ca Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Wojciech=20Mu=C5=82a?= Date: Sun, 24 Apr 2022 16:51:08 +0200 Subject: [PATCH] zstd: use helper function to create a zip reader in tests Some repeated code got removed. --- zstd/decodeheader_test.go | 11 +---- zstd/decoder_test.go | 97 +++++---------------------------------- zstd/dict_test.go | 30 ++---------- 3 files changed, 15 insertions(+), 123 deletions(-) diff --git a/zstd/decodeheader_test.go b/zstd/decodeheader_test.go index 3ff9ead619..e6d8be206c 100644 --- a/zstd/decodeheader_test.go +++ b/zstd/decodeheader_test.go @@ -7,19 +7,10 @@ import ( "os" "strings" "testing" - - "github.com/klauspost/compress/zip" ) func TestHeader_Decode(t *testing.T) { - data, err := ioutil.ReadFile("testdata/headers.zip") - if err != nil { - t.Fatal(err) - } - zr, err := zip.NewReader(bytes.NewReader(data), int64(len(data))) - if err != nil { - t.Fatal(err) - } + zr := testCreateZipReader("testdata/headers.zip", t) // Regenerate golden data... const regen = false diff --git a/zstd/decoder_test.go b/zstd/decoder_test.go index 7ce2549615..01e3fb1b52 100644 --- a/zstd/decoder_test.go +++ b/zstd/decoder_test.go @@ -27,7 +27,6 @@ import ( // "github.com/DataDog/zstd" // zstd "github.com/valyala/gozstd" - "github.com/klauspost/compress/zip" "github.com/klauspost/compress/zstd/internal/xxhash" ) @@ -638,14 +637,8 @@ func TestNewDecoderFlushed(t *testing.T) { func TestDecoderRegression(t *testing.T) { defer timeout(160 * time.Second)() - data, err := ioutil.ReadFile("testdata/regression.zip") - if err != nil { - t.Fatal(err) - } - zr, err := zip.NewReader(bytes.NewReader(data), int64(len(data))) - if err != nil { - t.Fatal(err) - } + + zr := testCreateZipReader("testdata/regression.zip", t) dec, err := NewReader(nil, WithDecoderConcurrency(1), WithDecoderLowmem(true), WithDecoderMaxMemory(1<<20)) if err != nil { t.Error(err) @@ -872,15 +865,7 @@ func TestDecoder_Reset(t *testing.T) { } func TestDecoderMultiFrame(t *testing.T) { - fn := "testdata/benchdecoder.zip" - data, err := ioutil.ReadFile(fn) - if err != nil { - t.Fatal(err) - } - zr, err := zip.NewReader(bytes.NewReader(data), int64(len(data))) - if err != nil { - t.Fatal(err) - } + zr := testCreateZipReader("testdata/benchdecoder.zip", t) dec, err := NewReader(nil) if err != nil { t.Fatal(err) @@ -933,15 +918,7 @@ func TestDecoderMultiFrame(t *testing.T) { } func TestDecoderMultiFrameReset(t *testing.T) { - fn := "testdata/benchdecoder.zip" - data, err := ioutil.ReadFile(fn) - if err != nil { - t.Fatal(err) - } - zr, err := zip.NewReader(bytes.NewReader(data), int64(len(data))) - if err != nil { - t.Fatal(err) - } + zr := testCreateZipReader("testdata/benchdecoder.zip", t) dec, err := NewReader(nil) if err != nil { t.Fatal(err) @@ -1005,14 +982,7 @@ func TestDecoderMultiFrameReset(t *testing.T) { } func testDecoderFile(t *testing.T, fn string, newDec func() (*Decoder, error)) { - data, err := ioutil.ReadFile(fn) - if err != nil { - t.Fatal(err) - } - zr, err := zip.NewReader(bytes.NewReader(data), int64(len(data))) - if err != nil { - t.Fatal(err) - } + zr := testCreateZipReader(fn, t) var want = make(map[string][]byte) for _, tt := range zr.File { if strings.HasSuffix(tt.Name, ".zst") { @@ -1119,14 +1089,7 @@ func testDecoderFile(t *testing.T, fn string, newDec func() (*Decoder, error)) { } func testDecoderFileBad(t *testing.T, fn string, newDec func() (*Decoder, error), errMap map[string]string) { - data, err := ioutil.ReadFile(fn) - if err != nil { - t.Fatal(err) - } - zr, err := zip.NewReader(bytes.NewReader(data), int64(len(data))) - if err != nil { - t.Fatal(err) - } + zr := testCreateZipReader(fn, t) var want = make(map[string][]byte) for _, tt := range zr.File { if strings.HasSuffix(tt.Name, ".zst") { @@ -1188,15 +1151,7 @@ func testDecoderFileBad(t *testing.T, fn string, newDec func() (*Decoder, error) } func BenchmarkDecoder_DecoderSmall(b *testing.B) { - fn := "testdata/benchdecoder.zip" - data, err := ioutil.ReadFile(fn) - if err != nil { - b.Fatal(err) - } - zr, err := zip.NewReader(bytes.NewReader(data), int64(len(data))) - if err != nil { - b.Fatal(err) - } + zr := testCreateZipReader("testdata/benchdecoder.zip", b) dec, err := NewReader(nil) if err != nil { b.Fatal(err) @@ -1249,15 +1204,7 @@ func BenchmarkDecoder_DecoderSmall(b *testing.B) { } func BenchmarkDecoder_DecodeAll(b *testing.B) { - fn := "testdata/benchdecoder.zip" - data, err := ioutil.ReadFile(fn) - if err != nil { - b.Fatal(err) - } - zr, err := zip.NewReader(bytes.NewReader(data), int64(len(data))) - if err != nil { - b.Fatal(err) - } + zr := testCreateZipReader("testdata/benchdecoder.zip", b) dec, err := NewReader(nil, WithDecoderConcurrency(1)) if err != nil { b.Fatal(err) @@ -1397,15 +1344,7 @@ func BenchmarkDecoder_DecodeAllFilesP(b *testing.B) { } func BenchmarkDecoder_DecodeAllParallel(b *testing.B) { - fn := "testdata/benchdecoder.zip" - data, err := ioutil.ReadFile(fn) - if err != nil { - b.Fatal(err) - } - zr, err := zip.NewReader(bytes.NewReader(data), int64(len(data))) - if err != nil { - b.Fatal(err) - } + zr := testCreateZipReader("testdata/benchdecoder.zip", b) dec, err := NewReader(nil, WithDecoderConcurrency(runtime.GOMAXPROCS(0))) if err != nil { b.Fatal(err) @@ -1498,14 +1437,7 @@ func BenchmarkDecoderEnwik9(b *testing.B) { } func testDecoderDecodeAll(t *testing.T, fn string, dec *Decoder) { - data, err := ioutil.ReadFile(fn) - if err != nil { - t.Fatal(err) - } - zr, err := zip.NewReader(bytes.NewReader(data), int64(len(data))) - if err != nil { - t.Fatal(err) - } + zr := testCreateZipReader(fn, t) var want = make(map[string][]byte) for _, tt := range zr.File { if strings.HasSuffix(tt.Name, ".zst") { @@ -1574,14 +1506,7 @@ func testDecoderDecodeAll(t *testing.T, fn string, dec *Decoder) { } func testDecoderDecodeAllError(t *testing.T, fn string, dec *Decoder, errMap map[string]string) { - data, err := ioutil.ReadFile(fn) - if err != nil { - t.Fatal(err) - } - zr, err := zip.NewReader(bytes.NewReader(data), int64(len(data))) - if err != nil { - t.Fatal(err) - } + zr := testCreateZipReader(fn, t) var wg sync.WaitGroup for _, tt := range zr.File { diff --git a/zstd/dict_test.go b/zstd/dict_test.go index 424107052a..013707c5fb 100644 --- a/zstd/dict_test.go +++ b/zstd/dict_test.go @@ -12,15 +12,7 @@ import ( func TestDecoder_SmallDict(t *testing.T) { // All files have CRC - fn := "testdata/dict-tests-small.zip" - data, err := ioutil.ReadFile(fn) - if err != nil { - t.Fatal(err) - } - zr, err := zip.NewReader(bytes.NewReader(data), int64(len(data))) - if err != nil { - t.Fatal(err) - } + zr := testCreateZipReader("testdata/dict-tests-small.zip", t) var dicts [][]byte for _, tt := range zr.File { if !strings.HasSuffix(tt.Name, ".dict") { @@ -73,15 +65,7 @@ func TestDecoder_SmallDict(t *testing.T) { func TestEncoder_SmallDict(t *testing.T) { // All files have CRC - fn := "testdata/dict-tests-small.zip" - data, err := ioutil.ReadFile(fn) - if err != nil { - t.Fatal(err) - } - zr, err := zip.NewReader(bytes.NewReader(data), int64(len(data))) - if err != nil { - t.Fatal(err) - } + zr := testCreateZipReader("testdata/dict-tests-small.zip", t) var dicts [][]byte var encs []*Encoder var noDictEncs []*Encoder @@ -222,17 +206,9 @@ func TestEncoder_SmallDict(t *testing.T) { } func benchmarkEncodeAllLimitedBySize(b *testing.B, lowerLimit int, upperLimit int) { - fn := "testdata/dict-tests-small.zip" - data, err := ioutil.ReadFile(fn) + zr := testCreateZipReader("testdata/dict-tests-small.zip", b) t := testing.TB(b) - if err != nil { - t.Fatal(err) - } - zr, err := zip.NewReader(bytes.NewReader(data), int64(len(data))) - if err != nil { - t.Fatal(err) - } var dicts [][]byte var encs []*Encoder var encNames []string