From 3d92efaef102d915056e1c02aff8b5d369809b79 Mon Sep 17 00:00:00 2001 From: Benny~ Date: Sat, 23 May 2020 09:42:59 +0800 Subject: [PATCH] encoder_test.go --- encoder_test.go | 51 +++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 51 insertions(+) create mode 100644 encoder_test.go diff --git a/encoder_test.go b/encoder_test.go new file mode 100644 index 0000000..848e5f3 --- /dev/null +++ b/encoder_test.go @@ -0,0 +1,51 @@ +package main + +import ( + "io/ioutil" + "os" + "path/filepath" + "testing" +) + +//go test -v -cover encoder_test.go encoder.go helper.go +func TestWebpEncoder(t *testing.T) { + + var webp = "/tmp/test-result.webp" + var target = walker() + + for _, f := range target { + //fmt.Println(b, c, webp) + runEncoder(t, f, webp) + } + _ = os.Remove(webp) + +} + +func walker() []string { + var list []string + _ = filepath.Walk("./pics", func(path string, info os.FileInfo, err error) error { + if !info.IsDir() { + list = append(list, path) + } + return nil + }) + return list +} + +func runEncoder(t *testing.T, file string, webp string) { + var c chan int + //t.Logf("Convert from %s to %s", file, webp) + var err = WebpEncoder(file, webp, 80, false, c) + if file == "pics/empty.jpg" && err != nil { + t.Log("Empty file, that's okay.") + } else if err != nil { + t.Fatalf("Fatal, convert failed for %s: %v ", file, err) + } + + data, _ := ioutil.ReadFile(webp) + types := GetFileContentType(data[:512]) + if types != "image/webp" { + t.Fatal("Fatal, file type is wrong!") + } + +}