85 lines
2.1 KiB
Go
85 lines
2.1 KiB
Go
|
|
package user
|
||
|
|
|
||
|
|
type mockRepository struct {
|
||
|
|
createFunc func(u *User) error
|
||
|
|
findAllFunc func() ([]User, error)
|
||
|
|
findAllPaginatedFunc func(page, limit int, query ListUserQuery) ([]User, int64, error)
|
||
|
|
findByIDFunc func(id uint) (*User, error)
|
||
|
|
findByEmailFunc func(email string) (*User, error)
|
||
|
|
findByGoogleIDFunc func(googleID string) (*User, error)
|
||
|
|
findByVerificationTokenFunc func(token string) (*User, error)
|
||
|
|
findByResetTokenFunc func(token string) (*User, error)
|
||
|
|
updateFunc func(u *User) error
|
||
|
|
deleteFunc func(id uint) error
|
||
|
|
}
|
||
|
|
|
||
|
|
func (m *mockRepository) Create(u *User) error {
|
||
|
|
if m.createFunc != nil {
|
||
|
|
return m.createFunc(u)
|
||
|
|
}
|
||
|
|
return nil
|
||
|
|
}
|
||
|
|
|
||
|
|
func (m *mockRepository) FindAll() ([]User, error) {
|
||
|
|
if m.findAllFunc != nil {
|
||
|
|
return m.findAllFunc()
|
||
|
|
}
|
||
|
|
return nil, nil
|
||
|
|
}
|
||
|
|
|
||
|
|
func (m *mockRepository) FindAllPaginated(page, limit int, query ListUserQuery) ([]User, int64, error) {
|
||
|
|
if m.findAllPaginatedFunc != nil {
|
||
|
|
return m.findAllPaginatedFunc(page, limit, query)
|
||
|
|
}
|
||
|
|
return nil, 0, nil
|
||
|
|
}
|
||
|
|
|
||
|
|
func (m *mockRepository) FindByID(id uint) (*User, error) {
|
||
|
|
if m.findByIDFunc != nil {
|
||
|
|
return m.findByIDFunc(id)
|
||
|
|
}
|
||
|
|
return nil, nil
|
||
|
|
}
|
||
|
|
|
||
|
|
func (m *mockRepository) FindByEmail(email string) (*User, error) {
|
||
|
|
if m.findByEmailFunc != nil {
|
||
|
|
return m.findByEmailFunc(email)
|
||
|
|
}
|
||
|
|
return nil, nil
|
||
|
|
}
|
||
|
|
|
||
|
|
func (m *mockRepository) FindByGoogleID(googleID string) (*User, error) {
|
||
|
|
if m.findByGoogleIDFunc != nil {
|
||
|
|
return m.findByGoogleIDFunc(googleID)
|
||
|
|
}
|
||
|
|
return nil, nil
|
||
|
|
}
|
||
|
|
|
||
|
|
func (m *mockRepository) FindByVerificationToken(token string) (*User, error) {
|
||
|
|
if m.findByVerificationTokenFunc != nil {
|
||
|
|
return m.findByVerificationTokenFunc(token)
|
||
|
|
}
|
||
|
|
return nil, nil
|
||
|
|
}
|
||
|
|
|
||
|
|
func (m *mockRepository) FindByResetToken(token string) (*User, error) {
|
||
|
|
if m.findByResetTokenFunc != nil {
|
||
|
|
return m.findByResetTokenFunc(token)
|
||
|
|
}
|
||
|
|
return nil, nil
|
||
|
|
}
|
||
|
|
|
||
|
|
func (m *mockRepository) Update(u *User) error {
|
||
|
|
if m.updateFunc != nil {
|
||
|
|
return m.updateFunc(u)
|
||
|
|
}
|
||
|
|
return nil
|
||
|
|
}
|
||
|
|
|
||
|
|
func (m *mockRepository) Delete(id uint) error {
|
||
|
|
if m.deleteFunc != nil {
|
||
|
|
return m.deleteFunc(id)
|
||
|
|
}
|
||
|
|
return nil
|
||
|
|
}
|