mirror of
https://github.com/crawlab-team/crawlab.git
synced 2026-01-22 17:31:03 +01:00
bug fix:fix go test ./.. bug
This commit is contained in:
@@ -1,8 +1,12 @@
|
||||
package utils
|
||||
|
||||
import (
|
||||
"archive/zip"
|
||||
. "github.com/smartystreets/goconvey/convey"
|
||||
"io"
|
||||
"log"
|
||||
"os"
|
||||
"runtime/debug"
|
||||
"testing"
|
||||
)
|
||||
|
||||
@@ -38,9 +42,13 @@ func TestIsDir(t *testing.T) {
|
||||
}
|
||||
|
||||
func TestCompress(t *testing.T) {
|
||||
var pathString = "../utils"
|
||||
err := os.Mkdir("testCompress", os.ModePerm)
|
||||
if err != nil {
|
||||
t.Error("create testCompress failed")
|
||||
}
|
||||
var pathString = "testCompress"
|
||||
var files []*os.File
|
||||
var disPath = "../utils/test"
|
||||
var disPath = "testCompress"
|
||||
file, err := os.Open(pathString)
|
||||
if err != nil {
|
||||
t.Error("open source path failed")
|
||||
@@ -52,15 +60,60 @@ func TestCompress(t *testing.T) {
|
||||
So(er, ShouldEqual, nil)
|
||||
})
|
||||
})
|
||||
os.RemoveAll("testCompress")
|
||||
|
||||
}
|
||||
|
||||
// 测试之前需存在有效的test(.zip)文件
|
||||
func TestDeCompress(t *testing.T) {
|
||||
var tmpFilePath = "./test"
|
||||
tmpFile, err := os.OpenFile(tmpFilePath, os.O_RDONLY, 0777)
|
||||
func Zip(zipFile string, fileList []string) error {
|
||||
// 创建 zip 包文件
|
||||
fw, err := os.Create(zipFile)
|
||||
if err != nil {
|
||||
t.Fatal("open zip file failed")
|
||||
log.Fatal()
|
||||
}
|
||||
defer fw.Close()
|
||||
|
||||
// 实例化新的 zip.Writer
|
||||
zw := zip.NewWriter(fw)
|
||||
defer func() {
|
||||
// 检测一下是否成功关闭
|
||||
if err := zw.Close(); err != nil {
|
||||
log.Fatalln(err)
|
||||
}
|
||||
}()
|
||||
|
||||
for _, fileName := range fileList {
|
||||
fr, err := os.Open(fileName)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
fi, err := fr.Stat()
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
// 写入文件的头信息
|
||||
fh, err := zip.FileInfoHeader(fi)
|
||||
w, err := zw.CreateHeader(fh)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
// 写入文件内容
|
||||
_, err = io.Copy(w, fr)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func TestDeCompress(t *testing.T) {
|
||||
err := os.Mkdir("testDeCompress", os.ModePerm)
|
||||
err = Zip("demo.zip", []string{})
|
||||
if err != nil {
|
||||
t.Error("create zip file failed")
|
||||
}
|
||||
tmpFile, err := os.OpenFile("demo.zip", os.O_RDONLY, 0777)
|
||||
if err != nil {
|
||||
debug.PrintStack()
|
||||
t.Error("open demo.zip failed")
|
||||
}
|
||||
var dstPath = "./testDeCompress"
|
||||
Convey("Test DeCopmress func", t, func() {
|
||||
@@ -68,5 +121,7 @@ func TestDeCompress(t *testing.T) {
|
||||
err := DeCompress(tmpFile, dstPath)
|
||||
So(err, ShouldEqual, nil)
|
||||
})
|
||||
os.RemoveAll("testDeCompress")
|
||||
os.Remove("demo.zip")
|
||||
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user