diff options
Diffstat (limited to 'internal/flate/decompress_test.go')
| -rw-r--r-- | internal/flate/decompress_test.go | 76 |
1 files changed, 0 insertions, 76 deletions
diff --git a/internal/flate/decompress_test.go b/internal/flate/decompress_test.go deleted file mode 100644 index 089159d6..00000000 --- a/internal/flate/decompress_test.go +++ /dev/null @@ -1,76 +0,0 @@ -package flate - -import ( - "bytes" - stdflate "compress/flate" - "testing" -) - -func compressDeflate(t *testing.T, payload, dict []byte) []byte { - t.Helper() - var buf bytes.Buffer - var ( - w *stdflate.Writer - err error - ) - if dict != nil { - w, err = stdflate.NewWriterDict(&buf, stdflate.DefaultCompression, dict) - } else { - w, err = stdflate.NewWriter(&buf, stdflate.DefaultCompression) - } - if err != nil { - t.Fatalf("NewWriter: %v", err) - } - if _, err := w.Write(payload); err != nil { - t.Fatalf("Write: %v", err) - } - if err := w.Close(); err != nil { - t.Fatalf("Close: %v", err) - } - return buf.Bytes() -} - -func TestDecompress(t *testing.T) { - payload := bytes.Repeat([]byte("golang"), 32) - compressed := compressDeflate(t, payload, nil) - - out, _, err := Decompress(compressed) - if err != nil { - t.Fatalf("Decompress: %v", err) - } - defer out.Release() - - if !bytes.Equal(out.Bytes(), payload) { - t.Fatalf("unexpected payload: got %q", out.Bytes()) - } -} - -func TestDecompressDict(t *testing.T) { - dict := []byte("furgit dictionary payload") - payload := append([]byte(nil), dict...) - payload = append(payload, []byte(" -- and some more data repeated -- and some more data repeated")...) - - compressed := compressDeflate(t, payload, dict) - - out, _, err := DecompressDict(compressed, dict) - if err != nil { - t.Fatalf("DecompressDict: %v", err) - } - defer out.Release() - - if !bytes.Equal(out.Bytes(), payload) { - t.Fatalf("unexpected payload: got %q", out.Bytes()) - } -} - -func TestDecompressDictMissing(t *testing.T) { - dict := []byte("shared prefix to enforce dictionary usage") - payload := append([]byte(nil), dict...) - payload = append(payload, []byte(" trailing data to force reference")...) - - compressed := compressDeflate(t, payload, dict) - - if _, _, err := Decompress(compressed); err == nil { - t.Fatalf("expected error when dictionary missing") - } -} |
