138 lines
3.8 KiB
Go
138 lines
3.8 KiB
Go
package auth
|
|
|
|
import "cardverse/internal/modules/user"
|
|
|
|
type mockUserRepository struct {
|
|
createFunc func(u *user.User) error
|
|
findAllFunc func() ([]user.User, error)
|
|
findAllPaginatedFunc func(page, limit int, query user.ListUserQuery) ([]user.User, int64, error)
|
|
findByIDFunc func(id uint) (*user.User, error)
|
|
findByEmailFunc func(email string) (*user.User, error)
|
|
findByGoogleIDFunc func(googleID string) (*user.User, error)
|
|
findByVerificationTokenFunc func(token string) (*user.User, error)
|
|
findByResetTokenFunc func(token string) (*user.User, error)
|
|
updateFunc func(u *user.User) error
|
|
deleteFunc func(id uint) error
|
|
}
|
|
|
|
func (m *mockUserRepository) Create(u *user.User) error {
|
|
if m.createFunc != nil {
|
|
return m.createFunc(u)
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (m *mockUserRepository) FindAll() ([]user.User, error) {
|
|
if m.findAllFunc != nil {
|
|
return m.findAllFunc()
|
|
}
|
|
return nil, nil
|
|
}
|
|
|
|
func (m *mockUserRepository) FindAllPaginated(page, limit int, query user.ListUserQuery) ([]user.User, int64, error) {
|
|
if m.findAllPaginatedFunc != nil {
|
|
return m.findAllPaginatedFunc(page, limit, query)
|
|
}
|
|
return nil, 0, nil
|
|
}
|
|
|
|
func (m *mockUserRepository) FindByID(id uint) (*user.User, error) {
|
|
if m.findByIDFunc != nil {
|
|
return m.findByIDFunc(id)
|
|
}
|
|
return nil, nil
|
|
}
|
|
|
|
func (m *mockUserRepository) FindByEmail(email string) (*user.User, error) {
|
|
if m.findByEmailFunc != nil {
|
|
return m.findByEmailFunc(email)
|
|
}
|
|
return nil, nil
|
|
}
|
|
|
|
func (m *mockUserRepository) FindByGoogleID(googleID string) (*user.User, error) {
|
|
if m.findByGoogleIDFunc != nil {
|
|
return m.findByGoogleIDFunc(googleID)
|
|
}
|
|
return nil, nil
|
|
}
|
|
|
|
func (m *mockUserRepository) FindByVerificationToken(token string) (*user.User, error) {
|
|
if m.findByVerificationTokenFunc != nil {
|
|
return m.findByVerificationTokenFunc(token)
|
|
}
|
|
return nil, nil
|
|
}
|
|
|
|
func (m *mockUserRepository) FindByResetToken(token string) (*user.User, error) {
|
|
if m.findByResetTokenFunc != nil {
|
|
return m.findByResetTokenFunc(token)
|
|
}
|
|
return nil, nil
|
|
}
|
|
|
|
func (m *mockUserRepository) Update(u *user.User) error {
|
|
if m.updateFunc != nil {
|
|
return m.updateFunc(u)
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (m *mockUserRepository) Delete(id uint) error {
|
|
if m.deleteFunc != nil {
|
|
return m.deleteFunc(id)
|
|
}
|
|
return nil
|
|
}
|
|
|
|
type mockAuthRepository struct {
|
|
createRefreshTokenFunc func(token *RefreshToken) error
|
|
findByTokenFunc func(token string) (*RefreshToken, error)
|
|
deleteByTokenFunc func(token string) error
|
|
deleteByUserIDFunc func(userID uint) error
|
|
replaceUserRefreshTokenFunc func(userID uint, newToken *RefreshToken) error
|
|
rotateRefreshTokenFunc func(oldToken string, newToken *RefreshToken) error
|
|
}
|
|
|
|
func (m *mockAuthRepository) CreateRefreshToken(token *RefreshToken) error {
|
|
if m.createRefreshTokenFunc != nil {
|
|
return m.createRefreshTokenFunc(token)
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (m *mockAuthRepository) FindByToken(token string) (*RefreshToken, error) {
|
|
if m.findByTokenFunc != nil {
|
|
return m.findByTokenFunc(token)
|
|
}
|
|
return nil, nil
|
|
}
|
|
|
|
func (m *mockAuthRepository) DeleteByToken(token string) error {
|
|
if m.deleteByTokenFunc != nil {
|
|
return m.deleteByTokenFunc(token)
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (m *mockAuthRepository) DeleteByUserID(userID uint) error {
|
|
if m.deleteByUserIDFunc != nil {
|
|
return m.deleteByUserIDFunc(userID)
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (m *mockAuthRepository) ReplaceUserRefreshToken(userID uint, newToken *RefreshToken) error {
|
|
if m.replaceUserRefreshTokenFunc != nil {
|
|
return m.replaceUserRefreshTokenFunc(userID, newToken)
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (m *mockAuthRepository) RotateRefreshToken(oldToken string, newToken *RefreshToken) error {
|
|
if m.rotateRefreshTokenFunc != nil {
|
|
return m.rotateRefreshTokenFunc(oldToken, newToken)
|
|
}
|
|
return nil
|
|
}
|