test: improve the test to work with multiple converter in the future

This commit is contained in:
Antoine Aflalo
2024-08-27 10:26:18 -04:00
parent 068564e87e
commit 86923862a9

View File

@@ -1,4 +1,4 @@
package webp package converter
import ( import (
"bytes" "bytes"
@@ -35,33 +35,40 @@ func TestConvertChapter(t *testing.T) {
} }
defer os.Remove(temp.Name()) defer os.Remove(temp.Name())
for _, tc := range testCases { for _, converter := range Available() {
t.Run(tc.name, func(t *testing.T) { converter, err := Get(converter)
chapter, err := tc.genTestChapter(temp.Name()) if err != nil {
if err != nil { t.Fatalf("failed to get converter: %v", err)
t.Fatalf("failed to load test genTestChapter: %v", err) }
} t.Run(converter.Format().String(), func(t *testing.T) {
for _, tc := range testCases {
t.Run(tc.name, func(t *testing.T) {
chapter, err := tc.genTestChapter(temp.Name())
if err != nil {
t.Fatalf("failed to load test genTestChapter: %v", err)
}
converter := New() quality := uint8(80)
quality := uint8(80)
progress := func(msg string) { progress := func(msg string) {
t.Log(msg) t.Log(msg)
} }
convertedChapter, err := converter.ConvertChapter(chapter, quality, progress) convertedChapter, err := converter.ConvertChapter(chapter, quality, progress)
if err != nil { if err != nil {
t.Fatalf("failed to convert genTestChapter: %v", err) t.Fatalf("failed to convert genTestChapter: %v", err)
} }
if len(convertedChapter.Pages) == 0 { if len(convertedChapter.Pages) == 0 {
t.Fatalf("no pages were converted") t.Fatalf("no pages were converted")
} }
for _, page := range convertedChapter.Pages { for _, page := range convertedChapter.Pages {
if page.Extension != ".webp" { if page.Extension != ".webp" {
t.Errorf("page %d was not converted to webp format", page.Index) t.Errorf("page %d was not converted to webp format", page.Index)
} }
}
})
} }
}) })
} }