2020-07-20 19:48:31 +02:00
|
|
|
package entity
|
|
|
|
|
|
|
|
import (
|
|
|
|
"testing"
|
|
|
|
"time"
|
|
|
|
)
|
|
|
|
|
|
|
|
func TestAddDuplicate(t *testing.T) {
|
|
|
|
t.Run("success", func(t *testing.T) {
|
|
|
|
if err := AddDuplicate(
|
|
|
|
"foobar.jpg",
|
|
|
|
RootOriginals,
|
|
|
|
"3cad9168fa6acc5c5c2965ddf6ec465ca42fd811",
|
|
|
|
661851,
|
|
|
|
time.Date(2019, 1, 6, 2, 6, 51, 0, time.UTC).Unix(),
|
|
|
|
); err != nil {
|
|
|
|
t.Fatal(err)
|
|
|
|
}
|
|
|
|
|
|
|
|
if err := AddDuplicate(
|
|
|
|
"foobar.jpg",
|
|
|
|
RootOriginals,
|
|
|
|
"3cad9168fa6acc5c5c2965ddf6ec465ca42fd818",
|
|
|
|
661858,
|
|
|
|
time.Date(2019, 3, 6, 2, 6, 51, 0, time.UTC).Unix(),
|
|
|
|
); err != nil {
|
|
|
|
t.Fatal(err)
|
|
|
|
}
|
|
|
|
|
|
|
|
duplicate := &Duplicate{FileName: "foobar.jpg", FileRoot: RootOriginals}
|
|
|
|
|
|
|
|
if err := duplicate.Find(); err != nil {
|
|
|
|
t.Fatal(err)
|
2020-07-21 10:52:39 +02:00
|
|
|
} else if duplicate.FileHash != "3cad9168fa6acc5c5c2965ddf6ec465ca42fd818" {
|
2020-07-20 19:48:31 +02:00
|
|
|
t.Fatal("file hash should be 3cad9168fa6acc5c5c2965ddf6ec465ca42fd818")
|
|
|
|
} else if duplicate.ModTime != time.Date(2019, 3, 6, 2, 6, 51, 0, time.UTC).Unix() {
|
|
|
|
t.Fatalf("mod time should be %d", time.Date(2019, 3, 6, 2, 6, 51, 0, time.UTC).Unix())
|
|
|
|
}
|
|
|
|
})
|
2020-10-19 17:06:09 +02:00
|
|
|
t.Run("error filename empty", func(t *testing.T) {
|
2020-07-20 19:48:31 +02:00
|
|
|
err := AddDuplicate(
|
|
|
|
"",
|
|
|
|
"",
|
|
|
|
"3cad9168fa6acc5c5c2965ddf6ec465ca42fd818",
|
|
|
|
661858,
|
|
|
|
time.Date(2019, 3, 6, 2, 6, 51, 0, time.UTC).Unix(),
|
|
|
|
)
|
|
|
|
|
|
|
|
if err == nil {
|
|
|
|
t.Fatal("error expected")
|
|
|
|
}
|
|
|
|
})
|
2020-10-19 17:06:09 +02:00
|
|
|
t.Run("error filehash empty", func(t *testing.T) {
|
|
|
|
err := AddDuplicate(
|
|
|
|
"foobar.jpg",
|
|
|
|
"",
|
|
|
|
"",
|
|
|
|
661858,
|
|
|
|
time.Date(2019, 3, 6, 2, 6, 51, 0, time.UTC).Unix(),
|
|
|
|
)
|
|
|
|
|
|
|
|
if err == nil {
|
|
|
|
t.Fatal("error expected")
|
|
|
|
}
|
|
|
|
})
|
|
|
|
t.Run("error mod time empty", func(t *testing.T) {
|
|
|
|
err := AddDuplicate(
|
|
|
|
"foobar.jpg",
|
|
|
|
"",
|
|
|
|
"3cad9168fa6acc5c5c2965ddf6ec465ca42fd818",
|
|
|
|
661858,
|
|
|
|
0,
|
|
|
|
)
|
|
|
|
|
|
|
|
if err == nil {
|
|
|
|
t.Fatal("error expected")
|
|
|
|
}
|
|
|
|
})
|
|
|
|
t.Run("error fileRoot empty", func(t *testing.T) {
|
|
|
|
err := AddDuplicate(
|
|
|
|
"foobar.jpg",
|
|
|
|
"",
|
|
|
|
"3cad9168fa6acc5c5c2965ddf6ec465ca42fd818",
|
|
|
|
661858,
|
|
|
|
time.Date(2019, 3, 6, 2, 6, 51, 0, time.UTC).Unix(),
|
|
|
|
)
|
|
|
|
|
|
|
|
if err == nil {
|
|
|
|
t.Fatal("error expected")
|
|
|
|
}
|
|
|
|
})
|
|
|
|
}
|
|
|
|
|
|
|
|
func TestCreateDuplicate(t *testing.T) {
|
|
|
|
t.Run("error mod time 0", func(t *testing.T) {
|
|
|
|
duplicate := &Duplicate{FileName: "foobar.jpg", FileHash: "12345tghy", FileRoot: RootOriginals, ModTime: 0}
|
|
|
|
err := duplicate.Create()
|
|
|
|
if err == nil {
|
|
|
|
t.Fatal("error expected")
|
|
|
|
}
|
|
|
|
})
|
|
|
|
t.Run("error filename empty", func(t *testing.T) {
|
|
|
|
duplicate := &Duplicate{FileName: "", FileHash: "12345tghy", FileRoot: RootOriginals, ModTime: time.Date(2019, 3, 6, 2, 6, 51, 0, time.UTC).Unix()}
|
|
|
|
err := duplicate.Create()
|
|
|
|
if err == nil {
|
|
|
|
t.Fatal("error expected")
|
|
|
|
}
|
|
|
|
})
|
|
|
|
t.Run("error filehash empty", func(t *testing.T) {
|
|
|
|
duplicate := &Duplicate{FileName: "foobar.jpg", FileHash: "", FileRoot: RootOriginals, ModTime: time.Date(2019, 3, 6, 2, 6, 51, 0, time.UTC).Unix()}
|
|
|
|
err := duplicate.Create()
|
|
|
|
if err == nil {
|
|
|
|
t.Fatal("error expected")
|
|
|
|
}
|
|
|
|
})
|
|
|
|
t.Run("error fileroot empty", func(t *testing.T) {
|
|
|
|
duplicate := &Duplicate{FileName: "foobar.jpg", FileHash: "jhg678", FileRoot: "", ModTime: time.Date(2019, 3, 6, 2, 6, 51, 0, time.UTC).Unix()}
|
|
|
|
err := duplicate.Create()
|
|
|
|
if err == nil {
|
|
|
|
t.Fatal("error expected")
|
|
|
|
}
|
|
|
|
})
|
|
|
|
}
|
|
|
|
|
|
|
|
func TestSaveDuplicate(t *testing.T) {
|
|
|
|
t.Run("error mod time 0", func(t *testing.T) {
|
|
|
|
duplicate := &Duplicate{FileName: "foobar.jpg", FileHash: "12345tghy", FileRoot: RootOriginals, ModTime: 0}
|
|
|
|
err := duplicate.Save()
|
|
|
|
if err == nil {
|
|
|
|
t.Fatal("error expected")
|
|
|
|
}
|
|
|
|
})
|
|
|
|
t.Run("error filename empty", func(t *testing.T) {
|
|
|
|
duplicate := &Duplicate{FileName: "", FileHash: "12345tghy", FileRoot: RootOriginals, ModTime: time.Date(2019, 3, 6, 2, 6, 51, 0, time.UTC).Unix()}
|
|
|
|
err := duplicate.Save()
|
|
|
|
if err == nil {
|
|
|
|
t.Fatal("error expected")
|
|
|
|
}
|
|
|
|
})
|
|
|
|
t.Run("error filehash empty", func(t *testing.T) {
|
|
|
|
duplicate := &Duplicate{FileName: "foobar.jpg", FileHash: "", FileRoot: RootOriginals, ModTime: time.Date(2019, 3, 6, 2, 6, 51, 0, time.UTC).Unix()}
|
|
|
|
err := duplicate.Save()
|
|
|
|
if err == nil {
|
|
|
|
t.Fatal("error expected")
|
|
|
|
}
|
|
|
|
})
|
|
|
|
t.Run("error fileroot empty", func(t *testing.T) {
|
|
|
|
duplicate := &Duplicate{FileName: "foobar.jpg", FileHash: "jhg678", FileRoot: "", ModTime: time.Date(2019, 3, 6, 2, 6, 51, 0, time.UTC).Unix()}
|
|
|
|
err := duplicate.Save()
|
|
|
|
if err == nil {
|
|
|
|
t.Fatal("error expected")
|
|
|
|
}
|
|
|
|
})
|
2020-07-20 19:48:31 +02:00
|
|
|
}
|