init commit
This commit is contained in:
63
store/test/attachment_test.go
Normal file
63
store/test/attachment_test.go
Normal file
@@ -0,0 +1,63 @@
|
||||
package teststore
|
||||
|
||||
import (
|
||||
"context"
|
||||
"testing"
|
||||
|
||||
"github.com/lithammer/shortuuid/v4"
|
||||
"github.com/stretchr/testify/require"
|
||||
|
||||
"github.com/usememos/memos/store"
|
||||
)
|
||||
|
||||
func TestAttachmentStore(t *testing.T) {
|
||||
ctx := context.Background()
|
||||
ts := NewTestingStore(ctx, t)
|
||||
_, err := ts.CreateAttachment(ctx, &store.Attachment{
|
||||
UID: shortuuid.New(),
|
||||
CreatorID: 101,
|
||||
Filename: "test.epub",
|
||||
Blob: []byte("test"),
|
||||
Type: "application/epub+zip",
|
||||
Size: 637607,
|
||||
})
|
||||
require.NoError(t, err)
|
||||
|
||||
correctFilename := "test.epub"
|
||||
incorrectFilename := "test.png"
|
||||
attachment, err := ts.GetAttachment(ctx, &store.FindAttachment{
|
||||
Filename: &correctFilename,
|
||||
})
|
||||
require.NoError(t, err)
|
||||
require.Equal(t, correctFilename, attachment.Filename)
|
||||
require.Equal(t, int32(1), attachment.ID)
|
||||
|
||||
notFoundAttachment, err := ts.GetAttachment(ctx, &store.FindAttachment{
|
||||
Filename: &incorrectFilename,
|
||||
})
|
||||
require.NoError(t, err)
|
||||
require.Nil(t, notFoundAttachment)
|
||||
|
||||
var correctCreatorID int32 = 101
|
||||
var incorrectCreatorID int32 = 102
|
||||
_, err = ts.GetAttachment(ctx, &store.FindAttachment{
|
||||
CreatorID: &correctCreatorID,
|
||||
})
|
||||
require.NoError(t, err)
|
||||
|
||||
notFoundAttachment, err = ts.GetAttachment(ctx, &store.FindAttachment{
|
||||
CreatorID: &incorrectCreatorID,
|
||||
})
|
||||
require.NoError(t, err)
|
||||
require.Nil(t, notFoundAttachment)
|
||||
|
||||
err = ts.DeleteAttachment(ctx, &store.DeleteAttachment{
|
||||
ID: 1,
|
||||
})
|
||||
require.NoError(t, err)
|
||||
err = ts.DeleteAttachment(ctx, &store.DeleteAttachment{
|
||||
ID: 2,
|
||||
})
|
||||
require.ErrorContains(t, err, "attachment not found")
|
||||
ts.Close()
|
||||
}
|
||||
Reference in New Issue
Block a user