Skip to content

Commit

Permalink
Tests: Add unit tests
Browse files Browse the repository at this point in the history
  • Loading branch information
graciousgrey committed May 27, 2024
1 parent 19b3e01 commit 977d6c0
Show file tree
Hide file tree
Showing 4 changed files with 125 additions and 0 deletions.
10 changes: 10 additions & 0 deletions internal/config/config_features_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -162,6 +162,16 @@ func TestConfig_DisableVector(t *testing.T) {
assert.Equal(t, c.Sponsor(), !c.DisableVectors())
}

func TestConfig_DisableRsvgConvert(t *testing.T) {
c := NewConfig(CliTestContext())

assert.Equal(t, c.Sponsor(), !c.DisableRsvgConvert())
c.options.DisableVectors = true
assert.True(t, c.DisableRsvgConvert())
c.options.DisableVectors = false
assert.Equal(t, c.Sponsor(), !c.DisableVectors())
}

func TestConfig_DisableRaw(t *testing.T) {
c := NewConfig(CliTestContext())

Expand Down
46 changes: 46 additions & 0 deletions internal/config/config_raw_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -109,3 +109,49 @@ func TestConfig_RsvgConvertEnabled(t *testing.T) {
c.options.DisableVectors = true
assert.False(t, c.RsvgConvertEnabled())
}

func TestConfig_CreateDarktableCachePath(t *testing.T) {
c := NewConfig(CliTestContext())
path, err := c.CreateDarktableCachePath()

if err != nil {
t.Fatal(err)
}

assert.Equal(t, path, "")

c.options.DarktableCachePath = "test"

path, err = c.CreateDarktableCachePath()

if err != nil {
t.Fatal(err)
}

assert.Contains(t, path, "test")

c.options.DarktableCachePath = ""
}

func TestConfig_CreateDarktableConfigPath(t *testing.T) {
c := NewConfig(CliTestContext())
path, err := c.CreateDarktableConfigPath()

if err != nil {
t.Fatal(err)
}

assert.Equal(t, path, "")

c.options.DarktableConfigPath = "test"

path, err = c.CreateDarktableConfigPath()

if err != nil {
t.Fatal(err)
}

assert.Contains(t, path, "test")

c.options.DarktableConfigPath = ""
}
24 changes: 24 additions & 0 deletions internal/config/config_thumb_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -77,3 +77,27 @@ func TestConfig_ThumbSizeUncached2(t *testing.T) {
c.options.ThumbSize = 900
assert.Equal(t, int(900), c.ThumbSizeUncached())
}

func TestConfig_PngSize(t *testing.T) {
c := NewConfig(CliTestContext())

assert.Equal(t, 720, c.PngSize())
c.options.PngSize = 700681
assert.Equal(t, 30000, c.PngSize())
c.options.PngSize = 1240
assert.Equal(t, 1240, c.PngSize())
}

func TestConfig_ThumbLibrary(t *testing.T) {
c := NewConfig(CliTestContext())
assert.False(t, c.DisableVips())
c.options.ThumbLibrary = "auto"
assert.Equal(t, "vips", c.ThumbLibrary())
c.options.DisableVips = true
assert.Equal(t, "imaging", c.ThumbLibrary())
c.options.DisableVips = false
c.options.ThumbLibrary = "libvips"
assert.Equal(t, "vips", c.ThumbLibrary())
c.options.ThumbLibrary = "xxx"
assert.Equal(t, "vips", c.ThumbLibrary())
}
45 changes: 45 additions & 0 deletions internal/photoprism/convert_image_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -126,6 +126,51 @@ func TestConvert_ToImage(t *testing.T) {

_ = imageFile.Remove()
})
t.Run("SvgWithVectorsDisabled", func(t *testing.T) {
svgFile := fs.Abs("./testdata/agpl.svg")

cnf.Options().DisableVectors = true

mediaFile, err := NewMediaFile(svgFile)

t.Logf("svg: %s", mediaFile.FileName())

if err != nil {
t.Fatal(err)
}

imageFile, err := convert.ToImage(mediaFile, false)

if err == nil {
t.Fatal("error expected")
}

assert.Nil(t, imageFile)

cnf.Options().DisableVectors = false

})
t.Run("Webp", func(t *testing.T) {
webpFile := fs.Abs("./testdata/windows95.webp")

mediaFile, err := NewMediaFile(webpFile)

t.Logf("webp: %s", mediaFile.FileName())

if err != nil {
t.Fatal(err)
}

imageFile, err := convert.ToImage(mediaFile, false)

if err != nil {
t.Fatal(err)
}

t.Logf("jpeg: %s", imageFile.FileName())

_ = imageFile.Remove()
})
t.Run("DoNotConvertThumb", func(t *testing.T) {
thumbFile := fs.Abs("./testdata/animated-earth.thm")

Expand Down

0 comments on commit 977d6c0

Please sign in to comment.