mirror of
				https://github.com/usememos/memos.git
				synced 2025-06-05 22:09:59 +02:00 
			
		
		
		
	chore: update store tests (#1449)
This commit is contained in:
		@@ -11,7 +11,7 @@ import (
 | 
			
		||||
type SystemSettingName string
 | 
			
		||||
 | 
			
		||||
const (
 | 
			
		||||
	// SystemSettingServerID is the name of server id.
 | 
			
		||||
	// SystemSettingServerIDName is the name of server id.
 | 
			
		||||
	SystemSettingServerIDName SystemSettingName = "server-id"
 | 
			
		||||
	// SystemSettingSecretSessionName is the name of secret session.
 | 
			
		||||
	SystemSettingSecretSessionName SystemSettingName = "secret-session"
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										42
									
								
								test/store/memo_test.go
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										42
									
								
								test/store/memo_test.go
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,42 @@
 | 
			
		||||
package teststore
 | 
			
		||||
 | 
			
		||||
import (
 | 
			
		||||
	"context"
 | 
			
		||||
	"testing"
 | 
			
		||||
 | 
			
		||||
	"github.com/stretchr/testify/require"
 | 
			
		||||
	"github.com/usememos/memos/api"
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
func TestMemoStore(t *testing.T) {
 | 
			
		||||
	ctx := context.Background()
 | 
			
		||||
	store := NewTestingStore(ctx, t)
 | 
			
		||||
	user, err := createTestingHostUser(ctx, store)
 | 
			
		||||
	require.NoError(t, err)
 | 
			
		||||
	memoCreate := &api.MemoCreate{
 | 
			
		||||
		CreatorID:  user.ID,
 | 
			
		||||
		Content:    "test_content",
 | 
			
		||||
		Visibility: api.Public,
 | 
			
		||||
	}
 | 
			
		||||
	memo, err := store.CreateMemo(ctx, memoCreate)
 | 
			
		||||
	require.NoError(t, err)
 | 
			
		||||
	require.Equal(t, memoCreate.Content, memo.Content)
 | 
			
		||||
	memoPatchContent := "test_content_2"
 | 
			
		||||
	memoPatch := &api.MemoPatch{
 | 
			
		||||
		ID:      memo.ID,
 | 
			
		||||
		Content: &memoPatchContent,
 | 
			
		||||
	}
 | 
			
		||||
	memo, err = store.PatchMemo(ctx, memoPatch)
 | 
			
		||||
	require.NoError(t, err)
 | 
			
		||||
	require.Equal(t, memoPatchContent, memo.Content)
 | 
			
		||||
	memoList, err := store.FindMemoList(ctx, &api.MemoFind{
 | 
			
		||||
		CreatorID: &user.ID,
 | 
			
		||||
	})
 | 
			
		||||
	require.NoError(t, err)
 | 
			
		||||
	require.Equal(t, 1, len(memoList))
 | 
			
		||||
	require.Equal(t, memo, memoList[0])
 | 
			
		||||
	err = store.DeleteMemo(ctx, &api.MemoDelete{
 | 
			
		||||
		ID: memo.ID,
 | 
			
		||||
	})
 | 
			
		||||
	require.NoError(t, err)
 | 
			
		||||
}
 | 
			
		||||
@@ -1,4 +1,4 @@
 | 
			
		||||
package store_test
 | 
			
		||||
package teststore
 | 
			
		||||
 | 
			
		||||
import (
 | 
			
		||||
	"context"
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										35
									
								
								test/store/system_setting_test.go
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										35
									
								
								test/store/system_setting_test.go
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,35 @@
 | 
			
		||||
package teststore
 | 
			
		||||
 | 
			
		||||
import (
 | 
			
		||||
	"context"
 | 
			
		||||
	"testing"
 | 
			
		||||
 | 
			
		||||
	"github.com/stretchr/testify/require"
 | 
			
		||||
 | 
			
		||||
	"github.com/usememos/memos/api"
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
func TestSystemSettingStore(t *testing.T) {
 | 
			
		||||
	ctx := context.Background()
 | 
			
		||||
	store := NewTestingStore(ctx, t)
 | 
			
		||||
	_, err := store.UpsertSystemSetting(ctx, &api.SystemSettingUpsert{
 | 
			
		||||
		Name:  api.SystemSettingServerIDName,
 | 
			
		||||
		Value: "test_server_id",
 | 
			
		||||
	})
 | 
			
		||||
	require.NoError(t, err)
 | 
			
		||||
	_, err = store.UpsertSystemSetting(ctx, &api.SystemSettingUpsert{
 | 
			
		||||
		Name:  api.SystemSettingSecretSessionName,
 | 
			
		||||
		Value: "test_secret_session_name",
 | 
			
		||||
	})
 | 
			
		||||
	require.NoError(t, err)
 | 
			
		||||
	_, err = store.UpsertSystemSetting(ctx, &api.SystemSettingUpsert{
 | 
			
		||||
		Name:  api.SystemSettingAllowSignUpName,
 | 
			
		||||
		Value: "true",
 | 
			
		||||
	})
 | 
			
		||||
	require.NoError(t, err)
 | 
			
		||||
	_, err = store.UpsertSystemSetting(ctx, &api.SystemSettingUpsert{
 | 
			
		||||
		Name:  api.SystemSettingLocalStoragePathName,
 | 
			
		||||
		Value: "/tmp/memos",
 | 
			
		||||
	})
 | 
			
		||||
	require.NoError(t, err)
 | 
			
		||||
}
 | 
			
		||||
@@ -1,4 +1,4 @@
 | 
			
		||||
package store_test
 | 
			
		||||
package teststore
 | 
			
		||||
 | 
			
		||||
import (
 | 
			
		||||
	"context"
 | 
			
		||||
@@ -6,28 +6,19 @@ import (
 | 
			
		||||
 | 
			
		||||
	"github.com/stretchr/testify/require"
 | 
			
		||||
	"github.com/usememos/memos/api"
 | 
			
		||||
	"github.com/usememos/memos/store"
 | 
			
		||||
	"golang.org/x/crypto/bcrypt"
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
func TestUserStore(t *testing.T) {
 | 
			
		||||
	ctx := context.Background()
 | 
			
		||||
	store := NewTestingStore(ctx, t)
 | 
			
		||||
	userCreate := &api.UserCreate{
 | 
			
		||||
		Username: "test",
 | 
			
		||||
		Role:     api.Host,
 | 
			
		||||
		Email:    "test@test.com",
 | 
			
		||||
		Nickname: "test_nickname",
 | 
			
		||||
		Password: "test_password",
 | 
			
		||||
		OpenID:   "test_open_id",
 | 
			
		||||
	}
 | 
			
		||||
	passwordHash, err := bcrypt.GenerateFromPassword([]byte(userCreate.Password), bcrypt.DefaultCost)
 | 
			
		||||
	require.NoError(t, err)
 | 
			
		||||
	userCreate.PasswordHash = string(passwordHash)
 | 
			
		||||
	user, err := store.CreateUser(ctx, userCreate)
 | 
			
		||||
	user, err := createTestingHostUser(ctx, store)
 | 
			
		||||
	require.NoError(t, err)
 | 
			
		||||
	users, err := store.FindUserList(ctx, &api.UserFind{})
 | 
			
		||||
	require.NoError(t, err)
 | 
			
		||||
	require.Equal(t, 1, len(users))
 | 
			
		||||
	require.Equal(t, api.Host, users[0].Role)
 | 
			
		||||
	require.Equal(t, user, users[0])
 | 
			
		||||
	userPatchNickname := "test_nickname_2"
 | 
			
		||||
	userPatch := &api.UserPatch{
 | 
			
		||||
@@ -45,3 +36,21 @@ func TestUserStore(t *testing.T) {
 | 
			
		||||
	require.NoError(t, err)
 | 
			
		||||
	require.Equal(t, 0, len(users))
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func createTestingHostUser(ctx context.Context, store *store.Store) (*api.User, error) {
 | 
			
		||||
	userCreate := &api.UserCreate{
 | 
			
		||||
		Username: "test",
 | 
			
		||||
		Role:     api.Host,
 | 
			
		||||
		Email:    "test@test.com",
 | 
			
		||||
		Nickname: "test_nickname",
 | 
			
		||||
		Password: "test_password",
 | 
			
		||||
		OpenID:   "test_open_id",
 | 
			
		||||
	}
 | 
			
		||||
	passwordHash, err := bcrypt.GenerateFromPassword([]byte(userCreate.Password), bcrypt.DefaultCost)
 | 
			
		||||
	if err != nil {
 | 
			
		||||
		return nil, err
 | 
			
		||||
	}
 | 
			
		||||
	userCreate.PasswordHash = string(passwordHash)
 | 
			
		||||
	user, err := store.CreateUser(ctx, userCreate)
 | 
			
		||||
	return user, err
 | 
			
		||||
}
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user