archive: add "none" compression format (MR 25)

This commit is contained in:
Clayton Craft
2023-02-26 11:28:58 -08:00
parent f24d0139c9
commit 7c2377d0c8
2 changed files with 11 additions and 1 deletions

View File

@@ -29,6 +29,7 @@ const (
FormatGzip CompressFormat = "gzip"
FormatLzma CompressFormat = "lzma"
FormatZstd CompressFormat = "zstd"
FormatNone CompressFormat = "none"
)
type CompressLevel string
@@ -103,6 +104,7 @@ func ExtractFormatLevel(s string) (format CompressFormat, level CompressLevel) {
case FormatLzma:
log.Println("Format lzma doesn't support a compression level, using default settings")
level = LevelDefault
case FormatNone:
case FormatZstd:
default:
log.Print("Unknown or no compression format set, using gzip")
@@ -313,6 +315,8 @@ func (archive *Archive) writeCompressed(path string, mode os.FileMode) (err erro
if err != nil {
return err
}
case FormatNone:
compressor = fd
case FormatZstd:
level := zstd.SpeedDefault
switch archive.compress_level {

View File

@@ -238,7 +238,7 @@ func TestExtractFormatLevel(t *testing.T) {
expectedLevel: LevelBest,
},
{
name: "none, none",
name: "<empty>, <empty>",
in: "",
expectedFormat: FormatGzip,
expectedLevel: LevelDefault,
@@ -249,6 +249,12 @@ func TestExtractFormatLevel(t *testing.T) {
expectedFormat: FormatLzma,
expectedLevel: LevelDefault,
},
{
name: "none",
in: "none",
expectedFormat: FormatNone,
expectedLevel: LevelDefault,
},
}
for _, test := range tests {