memos/test/store/storage_test.go
Lincoln Nogueira 5bcbbd4c52
chore: fix store tests on Windows (#2769)
It's just a matter of explicitly closing the database, so that TempDir.removeAll doesn't fail.
2024-01-16 13:51:26 +08:00

40 lines
1,021 B
Go

package teststore
import (
"context"
"testing"
"github.com/stretchr/testify/require"
"github.com/usememos/memos/store"
)
func TestStorageStore(t *testing.T) {
ctx := context.Background()
ts := NewTestingStore(ctx, t)
storage, err := ts.CreateStorage(ctx, &store.Storage{
Name: "test_storage",
Type: "S3",
Config: "{}",
})
require.NoError(t, err)
newStorageName := "new_storage_name"
updatedStorage, err := ts.UpdateStorage(ctx, &store.UpdateStorage{
ID: storage.ID,
Name: &newStorageName,
})
require.NoError(t, err)
require.Equal(t, newStorageName, updatedStorage.Name)
storageList, err := ts.ListStorages(ctx, &store.FindStorage{})
require.NoError(t, err)
require.Equal(t, 1, len(storageList))
require.Equal(t, updatedStorage, storageList[0])
err = ts.DeleteStorage(ctx, &store.DeleteStorage{
ID: storage.ID,
})
require.NoError(t, err)
storageList, err = ts.ListStorages(ctx, &store.FindStorage{})
require.NoError(t, err)
require.Equal(t, 0, len(storageList))
ts.Close()
}