mirror of
https://github.com/stashapp/stash.git
synced 2025-12-18 12:54:38 +03:00
Move image blobs into separate tables (#618)
* Scene cover fallback to database * Fix panic if studio not found * Fix movie studio not being imported/exported
This commit is contained in:
@@ -210,6 +210,96 @@ func TestStudioUpdateClearParent(t *testing.T) {
|
||||
}
|
||||
}
|
||||
|
||||
func TestStudioUpdateStudioImage(t *testing.T) {
|
||||
qb := models.NewStudioQueryBuilder()
|
||||
|
||||
// create performer to test against
|
||||
ctx := context.TODO()
|
||||
tx := database.DB.MustBeginTx(ctx, nil)
|
||||
|
||||
const name = "TestStudioUpdateStudioImage"
|
||||
created, err := createStudio(tx, name, nil)
|
||||
if err != nil {
|
||||
tx.Rollback()
|
||||
t.Fatalf("Error creating studio: %s", err.Error())
|
||||
}
|
||||
|
||||
image := []byte("image")
|
||||
err = qb.UpdateStudioImage(created.ID, image, tx)
|
||||
if err != nil {
|
||||
tx.Rollback()
|
||||
t.Fatalf("Error updating studio image: %s", err.Error())
|
||||
}
|
||||
|
||||
if err := tx.Commit(); err != nil {
|
||||
tx.Rollback()
|
||||
t.Fatalf("Error committing: %s", err.Error())
|
||||
}
|
||||
|
||||
// ensure image set
|
||||
storedImage, err := qb.GetStudioImage(created.ID, nil)
|
||||
if err != nil {
|
||||
t.Fatalf("Error getting image: %s", err.Error())
|
||||
}
|
||||
assert.Equal(t, storedImage, image)
|
||||
|
||||
// set nil image
|
||||
tx = database.DB.MustBeginTx(ctx, nil)
|
||||
err = qb.UpdateStudioImage(created.ID, nil, tx)
|
||||
if err == nil {
|
||||
t.Fatalf("Expected error setting nil image")
|
||||
}
|
||||
|
||||
tx.Rollback()
|
||||
}
|
||||
|
||||
func TestStudioDestroyStudioImage(t *testing.T) {
|
||||
qb := models.NewStudioQueryBuilder()
|
||||
|
||||
// create performer to test against
|
||||
ctx := context.TODO()
|
||||
tx := database.DB.MustBeginTx(ctx, nil)
|
||||
|
||||
const name = "TestStudioDestroyStudioImage"
|
||||
created, err := createStudio(tx, name, nil)
|
||||
if err != nil {
|
||||
tx.Rollback()
|
||||
t.Fatalf("Error creating studio: %s", err.Error())
|
||||
}
|
||||
|
||||
image := []byte("image")
|
||||
err = qb.UpdateStudioImage(created.ID, image, tx)
|
||||
if err != nil {
|
||||
tx.Rollback()
|
||||
t.Fatalf("Error updating studio image: %s", err.Error())
|
||||
}
|
||||
|
||||
if err := tx.Commit(); err != nil {
|
||||
tx.Rollback()
|
||||
t.Fatalf("Error committing: %s", err.Error())
|
||||
}
|
||||
|
||||
tx = database.DB.MustBeginTx(ctx, nil)
|
||||
|
||||
err = qb.DestroyStudioImage(created.ID, tx)
|
||||
if err != nil {
|
||||
tx.Rollback()
|
||||
t.Fatalf("Error destroying studio image: %s", err.Error())
|
||||
}
|
||||
|
||||
if err := tx.Commit(); err != nil {
|
||||
tx.Rollback()
|
||||
t.Fatalf("Error committing: %s", err.Error())
|
||||
}
|
||||
|
||||
// image should be nil
|
||||
storedImage, err := qb.GetStudioImage(created.ID, nil)
|
||||
if err != nil {
|
||||
t.Fatalf("Error getting image: %s", err.Error())
|
||||
}
|
||||
assert.Nil(t, storedImage)
|
||||
}
|
||||
|
||||
// TODO Create
|
||||
// TODO Update
|
||||
// TODO Destroy
|
||||
|
||||
Reference in New Issue
Block a user