From 2836d25e1b5e3ab54a15fa80caaf3ba2324317fb Mon Sep 17 00:00:00 2001 From: Michael Mayer Date: Fri, 1 May 2020 11:53:41 +0200 Subject: [PATCH] Backend: Add tests for thumb package Signed-off-by: Michael Mayer --- internal/thumb/create_test.go | 150 ++++++++++++++++++++++++++++ internal/thumb/jpeg.go | 17 ++-- internal/thumb/jpeg_test.go | 55 ++++++++++ internal/thumb/testdata/example.bmp | Bin 0 -> 20156 bytes internal/thumb/testdata/example.gif | Bin 0 -> 5760 bytes internal/thumb/testdata/example.jpg | Bin 0 -> 63812 bytes internal/thumb/testdata/example.png | Bin 0 -> 18518 bytes internal/thumb/testdata/example.tif | Bin 0 -> 43384 bytes internal/thumb/thumb_test.go | 24 +++++ internal/thumb/types_test.go | 41 ++++++++ 10 files changed, 277 insertions(+), 10 deletions(-) create mode 100644 internal/thumb/create_test.go create mode 100644 internal/thumb/jpeg_test.go create mode 100644 internal/thumb/testdata/example.bmp create mode 100644 internal/thumb/testdata/example.gif create mode 100644 internal/thumb/testdata/example.jpg create mode 100644 internal/thumb/testdata/example.png create mode 100644 internal/thumb/testdata/example.tif create mode 100644 internal/thumb/thumb_test.go create mode 100644 internal/thumb/types_test.go diff --git a/internal/thumb/create_test.go b/internal/thumb/create_test.go new file mode 100644 index 000000000..2dbb9681c --- /dev/null +++ b/internal/thumb/create_test.go @@ -0,0 +1,150 @@ +package thumb + +import ( + "os" + "testing" + + "github.com/disintegration/imaging" + "github.com/photoprism/photoprism/pkg/fs" + "github.com/stretchr/testify/assert" +) + +func TestResampleOptions(t *testing.T) { + method, filter, format := ResampleOptions(ResamplePng, ResampleFillCenter, ResampleDefault) + + assert.Equal(t, ResampleFillCenter, method) + assert.Equal(t, imaging.Lanczos.Support, filter.Support) + assert.Equal(t, fs.TypePng, format) +} + +func TestResample(t *testing.T) { + tile50 := Types["tile_50"] + + src := "testdata/example.jpg" + + assert.FileExists(t, src) + + img, err := imaging.Open(src, imaging.AutoOrientation(true)) + + if err != nil { + t.Fatal(err) + } + + bounds := img.Bounds() + + assert.Equal(t, 750, bounds.Max.X) + assert.Equal(t, 500, bounds.Max.Y) + + result := *Resample(&img, tile50.Width, tile50.Height, tile50.Options...) + + boundsNew := result.Bounds() + + assert.Equal(t, 50, boundsNew.Max.X) + assert.Equal(t, 50, boundsNew.Max.Y) +} + +func TestPostfix(t *testing.T) { + tile50 := Types["tile_50"] + + result := Postfix(tile50.Width, tile50.Height, tile50.Options...) + + assert.Equal(t, "50x50_center.jpg", result) +} + +func TestFilename(t *testing.T) { + t.Run("colors", func(t *testing.T) { + colorThumb := Types["colors"] + + result, err := Filename("123456789098765432", "testdata", colorThumb.Width, colorThumb.Height, colorThumb.Options...) + + if err != nil { + t.Fatal(err) + } + + assert.Equal(t, "testdata/1/2/3/123456789098765432_3x3_resize.png", result) + }) + + t.Run("fit_720", func(t *testing.T) { + fit720 := Types["fit_720"] + + result, err := Filename("123456789098765432", "testdata", fit720.Width, fit720.Height, fit720.Options...) + + if err != nil { + t.Fatal(err) + } + + assert.Equal(t, "testdata/1/2/3/123456789098765432_720x720_fit.jpg", result) + }) +} + +func TestFromFile(t *testing.T) { + t.Run("colors", func(t *testing.T) { + colorThumb := Types["colors"] + src := "testdata/example.gif" + dst := "testdata/1/2/3/123456789098765432_3x3_resize.png" + + assert.FileExists(t, src) + + fileName, err := FromFile(src, "123456789098765432", "testdata", colorThumb.Width, colorThumb.Height, colorThumb.Options...) + + if err != nil { + t.Fatal(err) + } + + assert.Equal(t, dst, fileName) + + assert.FileExists(t, dst) + }) + + t.Run("missing file", func(t *testing.T) { + colorThumb := Types["colors"] + src := "testdata/example.xxx" + + assert.NoFileExists(t, src) + + fileName, err := FromFile(src, "193456789098765432", "testdata", colorThumb.Width, colorThumb.Height, colorThumb.Options...) + + assert.Equal(t, "", fileName) + assert.Error(t, err) + }) +} + +func TestCreate(t *testing.T) { + t.Run("tile_500", func(t *testing.T) { + tile500 := Types["tile_500"] + src := "testdata/example.jpg" + dst := "testdata/example.tile_500.jpg" + + assert.FileExists(t, src) + assert.NoFileExists(t, dst) + + img, err := imaging.Open(src, imaging.AutoOrientation(true)) + + if err != nil { + t.Fatal(err) + } + + bounds := img.Bounds() + + assert.Equal(t, 750, bounds.Max.X) + assert.Equal(t, 500, bounds.Max.Y) + + resized, err := Create(&img, dst, tile500.Width, tile500.Height, tile500.Options...) + + if err != nil { + t.Fatal(err) + } + + assert.FileExists(t, dst) + + if err := os.Remove(dst); err != nil { + t.Fatal(err) + } + + imgNew := *resized + boundsNew := imgNew.Bounds() + + assert.Equal(t, 500, boundsNew.Max.X) + assert.Equal(t, 500, boundsNew.Max.Y) + }) +} diff --git a/internal/thumb/jpeg.go b/internal/thumb/jpeg.go index 410f0a506..97fe08e90 100644 --- a/internal/thumb/jpeg.go +++ b/internal/thumb/jpeg.go @@ -6,23 +6,20 @@ import ( "github.com/disintegration/imaging" ) -func Jpeg(srcFilename, jpgFilename string) (result image.Image, err error) { - img, err := imaging.Open(srcFilename, imaging.AutoOrientation(true)) +func Jpeg(srcFilename, jpgFilename string) (img image.Image, err error) { + img, err = imaging.Open(srcFilename, imaging.AutoOrientation(true)) if err != nil { log.Errorf("thumbs: can't open %s", srcFilename) - return result, err + return img, err } - var saveOption imaging.EncodeOption - saveOption = imaging.JPEGQuality(JpegQuality) + saveOption := imaging.JPEGQuality(JpegQuality) - err = imaging.Save(img, jpgFilename, saveOption) - - if err != nil { + if err = imaging.Save(img, jpgFilename, saveOption); err != nil { log.Errorf("thumbs: failed to save %s", jpgFilename) - return result, err + return img, err } - return result, nil + return img, nil } diff --git a/internal/thumb/jpeg_test.go b/internal/thumb/jpeg_test.go new file mode 100644 index 000000000..8d793dde2 --- /dev/null +++ b/internal/thumb/jpeg_test.go @@ -0,0 +1,55 @@ +package thumb + +import ( + "os" + "testing" + + "github.com/stretchr/testify/assert" +) + +func TestJpeg(t *testing.T) { + formats := []string{"bmp", "gif", "png", "tif"} + + for _, ext := range formats { + t.Run(ext, func(t *testing.T) { + src := "testdata/example." + ext + dst := "testdata/example." + ext +".jpg" + + assert.NoFileExists(t, dst) + + img, err := Jpeg(src, dst) + + if err != nil { + t.Fatal(err) + } + + assert.FileExists(t, dst) + + bounds := img.Bounds() + assert.Equal(t, 100, bounds.Max.X) + assert.Equal(t, 67, bounds.Max.Y) + + if err := os.Remove(dst); err != nil { + t.Fatal(err) + } + }) + } + + t.Run("foo", func(t *testing.T) { + + src := "testdata/example.foo" + dst := "testdata/example.foo.jpg" + + assert.NoFileExists(t, dst) + + img, err := Jpeg(src, dst) + + assert.NoFileExists(t, dst) + + if img != nil { + t.Fatal("img should be nil") + } + + assert.Error(t, err) + }) +} diff --git a/internal/thumb/testdata/example.bmp b/internal/thumb/testdata/example.bmp new file mode 100644 index 0000000000000000000000000000000000000000..d404d42b27fc9b8d0e0f9224f62a43167ec1fd63 GIT binary patch literal 20156 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�Fc%WVA7B= zB+a8I(xX@A3G~an2BN$MFlj>|Ert!!_Py=d`>#uNFL?WV9oRzx_qMx_1%8Mh{=UGs zzK;_K?~eV~$9@j6M*R1e+5_SKO*mJ>r;-^2I%eZcr@}`(IDQM^REft4PM&=+>`s}7 z%88KSNzL`bbnzHf0^1sYyLxyzN}QSlkuliBaAOd&jxe`QSeS6Y2zT$sjA7C|dZRr0 zqCEPeJO`pY2cx}kY5U&(M|B_8EZXQ$@W$n^V8I>&Q-=%WT~q*CdvL(p4PcEWvTRrubh4X5@SRQ@w6_%MP#l1xFx8b}c$SvZ+2m{9n^roU}>3(go?Y3@A{7$|J+ z{W1?Qh6CO{R`;>Jj|JlI2+SUAdfI&t3B)u`$hjXm#5Ljx@ApF15{eLZKjTZm_ literal 0 HcmV?d00001 diff --git a/internal/thumb/testdata/example.gif b/internal/thumb/testdata/example.gif new file mode 100644 index 0000000000000000000000000000000000000000..d5326632ef568f65f0490bbec28769a77871c895 GIT binary patch literal 5760 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 t44H5|Mwa8j#WMK$N7@+rcVypq&; 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 LQEaB_$#ee;x?za@ literal 0 HcmV?d00001 diff --git a/internal/thumb/testdata/example.tif b/internal/thumb/testdata/example.tif new file mode 100644 index 0000000000000000000000000000000000000000..d17692869e145086c8d0df935050f6131cb2b005 GIT binary patch literal 43384 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