68
archivex/zipx/zip_test.go
Normal file
68
archivex/zipx/zip_test.go
Normal file
@@ -0,0 +1,68 @@
|
||||
package zipx
|
||||
|
||||
import (
|
||||
"archive/zip"
|
||||
"fmt"
|
||||
"path/filepath"
|
||||
"testing"
|
||||
|
||||
"git.cloudyne.io/go/hiscaler-gox/filex"
|
||||
)
|
||||
|
||||
var files []string
|
||||
|
||||
func init() {
|
||||
files = []string{
|
||||
"./zip.go",
|
||||
"./testdata/a/a.txt",
|
||||
"./testdata/b/b.txt",
|
||||
"./testdata/中国/你好.txt",
|
||||
}
|
||||
}
|
||||
|
||||
func TestCompressCompactDirectory(t *testing.T) {
|
||||
err := Compress("./a.zip", files, zip.Deflate, true)
|
||||
if err != nil {
|
||||
t.Error(err)
|
||||
} else if !filex.Exists("./a.zip") {
|
||||
t.Error("zip file not exists")
|
||||
}
|
||||
}
|
||||
|
||||
func TestCompressUnCompactDirectory(t *testing.T) {
|
||||
err := Compress("./a.zip", files, zip.Deflate, false)
|
||||
if err != nil {
|
||||
t.Error(err)
|
||||
} else if !filex.Exists("./a.zip") {
|
||||
t.Error("zip file not exists")
|
||||
}
|
||||
}
|
||||
|
||||
func TestCompressError(t *testing.T) {
|
||||
notExistsFiles := make([]string, 0)
|
||||
for i := 0; i <= 100; i++ {
|
||||
notExistsFiles = append(notExistsFiles, fmt.Sprintf("%d-not-exists.file", i))
|
||||
}
|
||||
err := Compress("./a.zip", notExistsFiles, zip.Deflate, true)
|
||||
if err == nil {
|
||||
t.Error("err is nil")
|
||||
} else {
|
||||
t.Logf("err = %s", err.Error())
|
||||
}
|
||||
}
|
||||
|
||||
func TestUnCompress(t *testing.T) {
|
||||
TestCompressUnCompactDirectory(t)
|
||||
err := UnCompress("./a.zip", "./a")
|
||||
if err != nil {
|
||||
t.Error(err.Error())
|
||||
} else {
|
||||
for _, file := range files {
|
||||
checkFile := filepath.Join("./a", file)
|
||||
if !filex.Exists(checkFile) {
|
||||
t.Errorf("%s is not exists", checkFile)
|
||||
break
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user