Fix tests, add new mock for auth/svc/users
This commit is contained in:
@@ -125,6 +125,7 @@ mocks: $(GOMOCK)
|
||||
$(MOCKGEN) -package service -source sam/service/message.go -destination sam/service/message_mock_test.go
|
||||
$(MOCKGEN) -package service -source sam/service/organisation.go -destination sam/service/organisation_mock_test.go
|
||||
$(MOCKGEN) -package service -source sam/service/team.go -destination sam/service/team_mock_test.go
|
||||
$(MOCKGEN) -package service -source auth/service/user.go -destination auth/service/user_mock_test.go
|
||||
|
||||
|
||||
########################################################################################################################
|
||||
|
||||
@@ -0,0 +1,125 @@
|
||||
// Code generated by MockGen. DO NOT EDIT.
|
||||
// Source: auth/service/user.go
|
||||
|
||||
// Package service is a generated GoMock package.
|
||||
package service
|
||||
|
||||
import (
|
||||
context "context"
|
||||
types "github.com/crusttech/crust/auth/types"
|
||||
gomock "github.com/golang/mock/gomock"
|
||||
reflect "reflect"
|
||||
)
|
||||
|
||||
// MockUserService is a mock of UserService interface
|
||||
type MockUserService struct {
|
||||
ctrl *gomock.Controller
|
||||
recorder *MockUserServiceMockRecorder
|
||||
}
|
||||
|
||||
// MockUserServiceMockRecorder is the mock recorder for MockUserService
|
||||
type MockUserServiceMockRecorder struct {
|
||||
mock *MockUserService
|
||||
}
|
||||
|
||||
// NewMockUserService creates a new mock instance
|
||||
func NewMockUserService(ctrl *gomock.Controller) *MockUserService {
|
||||
mock := &MockUserService{ctrl: ctrl}
|
||||
mock.recorder = &MockUserServiceMockRecorder{mock}
|
||||
return mock
|
||||
}
|
||||
|
||||
// EXPECT returns an object that allows the caller to indicate expected use
|
||||
func (m *MockUserService) EXPECT() *MockUserServiceMockRecorder {
|
||||
return m.recorder
|
||||
}
|
||||
|
||||
// With mocks base method
|
||||
func (m *MockUserService) With(ctx context.Context) UserService {
|
||||
ret := m.ctrl.Call(m, "With", ctx)
|
||||
ret0, _ := ret[0].(UserService)
|
||||
return ret0
|
||||
}
|
||||
|
||||
// With indicates an expected call of With
|
||||
func (mr *MockUserServiceMockRecorder) With(ctx interface{}) *gomock.Call {
|
||||
return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "With", reflect.TypeOf((*MockUserService)(nil).With), ctx)
|
||||
}
|
||||
|
||||
// FindByID mocks base method
|
||||
func (m *MockUserService) FindByID(id uint64) (*types.User, error) {
|
||||
ret := m.ctrl.Call(m, "FindByID", id)
|
||||
ret0, _ := ret[0].(*types.User)
|
||||
ret1, _ := ret[1].(error)
|
||||
return ret0, ret1
|
||||
}
|
||||
|
||||
// FindByID indicates an expected call of FindByID
|
||||
func (mr *MockUserServiceMockRecorder) FindByID(id interface{}) *gomock.Call {
|
||||
return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "FindByID", reflect.TypeOf((*MockUserService)(nil).FindByID), id)
|
||||
}
|
||||
|
||||
// Find mocks base method
|
||||
func (m *MockUserService) Find(filter *types.UserFilter) (types.UserSet, error) {
|
||||
ret := m.ctrl.Call(m, "Find", filter)
|
||||
ret0, _ := ret[0].(types.UserSet)
|
||||
ret1, _ := ret[1].(error)
|
||||
return ret0, ret1
|
||||
}
|
||||
|
||||
// Find indicates an expected call of Find
|
||||
func (mr *MockUserServiceMockRecorder) Find(filter interface{}) *gomock.Call {
|
||||
return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Find", reflect.TypeOf((*MockUserService)(nil).Find), filter)
|
||||
}
|
||||
|
||||
// Create mocks base method
|
||||
func (m *MockUserService) Create(input *types.User) (*types.User, error) {
|
||||
ret := m.ctrl.Call(m, "Create", input)
|
||||
ret0, _ := ret[0].(*types.User)
|
||||
ret1, _ := ret[1].(error)
|
||||
return ret0, ret1
|
||||
}
|
||||
|
||||
// Create indicates an expected call of Create
|
||||
func (mr *MockUserServiceMockRecorder) Create(input interface{}) *gomock.Call {
|
||||
return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Create", reflect.TypeOf((*MockUserService)(nil).Create), input)
|
||||
}
|
||||
|
||||
// Update mocks base method
|
||||
func (m *MockUserService) Update(mod *types.User) (*types.User, error) {
|
||||
ret := m.ctrl.Call(m, "Update", mod)
|
||||
ret0, _ := ret[0].(*types.User)
|
||||
ret1, _ := ret[1].(error)
|
||||
return ret0, ret1
|
||||
}
|
||||
|
||||
// Update indicates an expected call of Update
|
||||
func (mr *MockUserServiceMockRecorder) Update(mod interface{}) *gomock.Call {
|
||||
return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Update", reflect.TypeOf((*MockUserService)(nil).Update), mod)
|
||||
}
|
||||
|
||||
// FindOrCreate mocks base method
|
||||
func (m *MockUserService) FindOrCreate(arg0 *types.User) (*types.User, error) {
|
||||
ret := m.ctrl.Call(m, "FindOrCreate", arg0)
|
||||
ret0, _ := ret[0].(*types.User)
|
||||
ret1, _ := ret[1].(error)
|
||||
return ret0, ret1
|
||||
}
|
||||
|
||||
// FindOrCreate indicates an expected call of FindOrCreate
|
||||
func (mr *MockUserServiceMockRecorder) FindOrCreate(arg0 interface{}) *gomock.Call {
|
||||
return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "FindOrCreate", reflect.TypeOf((*MockUserService)(nil).FindOrCreate), arg0)
|
||||
}
|
||||
|
||||
// ValidateCredentials mocks base method
|
||||
func (m *MockUserService) ValidateCredentials(username, password string) (*types.User, error) {
|
||||
ret := m.ctrl.Call(m, "ValidateCredentials", username, password)
|
||||
ret0, _ := ret[0].(*types.User)
|
||||
ret1, _ := ret[1].(error)
|
||||
return ret0, ret1
|
||||
}
|
||||
|
||||
// ValidateCredentials indicates an expected call of ValidateCredentials
|
||||
func (mr *MockUserServiceMockRecorder) ValidateCredentials(username, password interface{}) *gomock.Call {
|
||||
return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "ValidateCredentials", reflect.TypeOf((*MockUserService)(nil).ValidateCredentials), username, password)
|
||||
}
|
||||
@@ -2,10 +2,11 @@ package service
|
||||
|
||||
import (
|
||||
"context"
|
||||
"testing"
|
||||
|
||||
"github.com/crusttech/crust/sam/types"
|
||||
"github.com/golang/mock/gomock"
|
||||
"github.com/titpetric/factory"
|
||||
"testing"
|
||||
)
|
||||
|
||||
func TestUser(t *testing.T) {
|
||||
|
||||
@@ -74,17 +74,13 @@ func (r *message) FindMessages(filter *types.MessageFilter) (types.MessageSet, e
|
||||
|
||||
sql := sqlMessagesSelect
|
||||
|
||||
if filter != nil {
|
||||
if filter.Query != "" {
|
||||
sql += " AND message LIKE ?"
|
||||
params = append(params, filter.Query+"%")
|
||||
}
|
||||
if filter == nil {
|
||||
filter = &types.MessageFilter{}
|
||||
}
|
||||
|
||||
if filter.ChannelID == 0 && filter.RepliesTo == 0 {
|
||||
// Channel history or replies to a message...
|
||||
// nothing more.
|
||||
return nil, nil
|
||||
if filter.Query != "" {
|
||||
sql += " AND message LIKE ?"
|
||||
params = append(params, filter.Query+"%")
|
||||
}
|
||||
|
||||
if filter.ChannelID > 0 {
|
||||
|
||||
@@ -18,43 +18,51 @@ func TestMessage(t *testing.T) {
|
||||
return
|
||||
}
|
||||
|
||||
rpo := Message(context.Background(), factory.Database.MustGet())
|
||||
msg := &types.Message{}
|
||||
msgRpo := Message(context.Background(), factory.Database.MustGet())
|
||||
chRpo := Channel(context.Background(), factory.Database.MustGet())
|
||||
|
||||
var msg1, msg2 = "Test message v1", "Test message v2"
|
||||
|
||||
var mm types.MessageSet
|
||||
|
||||
{
|
||||
tx(t, func() error {
|
||||
ch := &types.Channel{}
|
||||
ch, err = chRpo.CreateChannel(ch)
|
||||
ch.Type = types.ChannelTypePublic
|
||||
|
||||
msg := &types.Message{ChannelID: ch.ID}
|
||||
|
||||
msg.Message = msg1
|
||||
msg, err = rpo.CreateMessage(msg)
|
||||
msg, err = msgRpo.CreateMessage(msg)
|
||||
assert(t, err == nil, "CreateMessage error: %v", err)
|
||||
assert(t, msg.Message == msg1, "Changes were not stored")
|
||||
|
||||
{
|
||||
msg.Message = msg2
|
||||
msg, err = rpo.UpdateMessage(msg)
|
||||
msg, err = msgRpo.UpdateMessage(msg)
|
||||
assert(t, err == nil, "UpdateMessage error: %v", err)
|
||||
assert(t, msg.Message == msg2, "Changes were not stored")
|
||||
}
|
||||
|
||||
{
|
||||
msg, err = rpo.FindMessageByID(msg.ID)
|
||||
msg, err = msgRpo.FindMessageByID(msg.ID)
|
||||
assert(t, err == nil, "FindMessageByID error: %v", err)
|
||||
assert(t, msg.Message == msg2, "Changes were not stored")
|
||||
}
|
||||
|
||||
{
|
||||
mm, err = rpo.FindMessages(&types.MessageFilter{Query: msg2})
|
||||
mm, err = msgRpo.FindMessages(&types.MessageFilter{Query: msg2})
|
||||
assert(t, err == nil, "FindMessages error: %v", err)
|
||||
assert(t, len(mm) > 0, "No results found")
|
||||
}
|
||||
|
||||
{
|
||||
err = rpo.DeleteMessageByID(msg.ID)
|
||||
err = msgRpo.DeleteMessageByID(msg.ID)
|
||||
assert(t, err == nil, "DeleteMessageByID error: %v", err)
|
||||
}
|
||||
}
|
||||
|
||||
return nil
|
||||
})
|
||||
}
|
||||
|
||||
func TestReplies(t *testing.T) {
|
||||
@@ -65,38 +73,42 @@ func TestReplies(t *testing.T) {
|
||||
return
|
||||
}
|
||||
|
||||
chID := factory.Sonyflake.NextID()
|
||||
|
||||
rpo := Message(context.Background(), factory.Database.MustGet())
|
||||
msg := &types.Message{ChannelID: chID}
|
||||
rpl := &types.Message{ChannelID: chID}
|
||||
msgRpo := Message(context.Background(), factory.Database.MustGet())
|
||||
chRpo := Channel(context.Background(), factory.Database.MustGet())
|
||||
|
||||
var mm types.MessageSet
|
||||
|
||||
tx(t, func() error {
|
||||
msg, err = rpo.CreateMessage(msg)
|
||||
ch := &types.Channel{}
|
||||
ch, err = chRpo.CreateChannel(ch)
|
||||
ch.Type = types.ChannelTypePublic
|
||||
|
||||
msg := &types.Message{ChannelID: ch.ID}
|
||||
rpl := &types.Message{ChannelID: ch.ID}
|
||||
|
||||
msg, err = msgRpo.CreateMessage(msg)
|
||||
assert(t, err == nil, "CreateMessage error: %v", err)
|
||||
assert(t, msg.ID > 0, "Message did not get its ID")
|
||||
|
||||
rpl.ReplyTo = msg.ID
|
||||
rpl, err = rpo.CreateMessage(rpl)
|
||||
rpl, err = msgRpo.CreateMessage(rpl)
|
||||
assert(t, err == nil, "CreateMessage error: %v", err)
|
||||
assert(t, rpl.ID > 0, "Reply did not get its ID")
|
||||
|
||||
{
|
||||
mm, err = rpo.FindMessages(&types.MessageFilter{
|
||||
mm, err = msgRpo.FindMessages(&types.MessageFilter{
|
||||
RepliesTo: msg.ID,
|
||||
ChannelID: chID,
|
||||
ChannelID: ch.ID,
|
||||
})
|
||||
|
||||
assert(t, err == nil, "FindMessages error: %v", err)
|
||||
assert(t, len(mm) == 1, "Failed to fetch only reply")
|
||||
assert(t, len(mm) == 1, "Failed to fetch only reply, got: %d", len(mm))
|
||||
assert(t, mm[0].ID == rpl.ID, "Reply ID does not match")
|
||||
}
|
||||
|
||||
{
|
||||
mm, err = rpo.FindMessages(&types.MessageFilter{
|
||||
ChannelID: chID,
|
||||
mm, err = msgRpo.FindMessages(&types.MessageFilter{
|
||||
ChannelID: ch.ID,
|
||||
})
|
||||
|
||||
assert(t, err == nil, "FindMessages error: %v", err)
|
||||
@@ -105,18 +117,18 @@ func TestReplies(t *testing.T) {
|
||||
}
|
||||
|
||||
{
|
||||
rpo.IncReplyCount(msg.ID)
|
||||
rpo.IncReplyCount(msg.ID)
|
||||
rpo.IncReplyCount(msg.ID)
|
||||
assert(t, msgRpo.IncReplyCount(msg.ID) == nil, "IncReplyCount should not return an error")
|
||||
assert(t, msgRpo.IncReplyCount(msg.ID) == nil, "IncReplyCount should not return an error")
|
||||
assert(t, msgRpo.IncReplyCount(msg.ID) == nil, "IncReplyCount should not return an error")
|
||||
|
||||
msg, err = rpo.FindMessageByID(msg.ID)
|
||||
msg, err = msgRpo.FindMessageByID(msg.ID)
|
||||
assert(t, err == nil, "FindMessageByID error: %v", err)
|
||||
assert(t, msg.Replies == 3, "Reply counter check failed, expecting 3, got %v", msg.Replies)
|
||||
|
||||
rpo.DecReplyCount(msg.ID)
|
||||
rpo.DecReplyCount(msg.ID)
|
||||
assert(t, msgRpo.DecReplyCount(msg.ID) == nil, "DecReplyCount should not return an error")
|
||||
assert(t, msgRpo.DecReplyCount(msg.ID) == nil, "DecReplyCount should not return an error")
|
||||
|
||||
msg, err = rpo.FindMessageByID(msg.ID)
|
||||
msg, err = msgRpo.FindMessageByID(msg.ID)
|
||||
assert(t, err == nil, "FindMessageByID error: %v", err)
|
||||
assert(t, msg.Replies == 1, "Reply counter check failed, expecting 1, got %v", msg.Replies)
|
||||
}
|
||||
|
||||
@@ -61,16 +61,16 @@ func (mr *MockAttachmentServiceMockRecorder) FindByID(id interface{}) *gomock.Ca
|
||||
}
|
||||
|
||||
// Create mocks base method
|
||||
func (m *MockAttachmentService) Create(channelId uint64, name string, size int64, fh io.ReadSeeker) (*types.Attachment, error) {
|
||||
ret := m.ctrl.Call(m, "Create", channelId, name, size, fh)
|
||||
func (m *MockAttachmentService) Create(name string, size int64, fh io.ReadSeeker, channelId, replyTo uint64) (*types.Attachment, error) {
|
||||
ret := m.ctrl.Call(m, "Create", name, size, fh, channelId, replyTo)
|
||||
ret0, _ := ret[0].(*types.Attachment)
|
||||
ret1, _ := ret[1].(error)
|
||||
return ret0, ret1
|
||||
}
|
||||
|
||||
// Create indicates an expected call of Create
|
||||
func (mr *MockAttachmentServiceMockRecorder) Create(channelId, name, size, fh interface{}) *gomock.Call {
|
||||
return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Create", reflect.TypeOf((*MockAttachmentService)(nil).Create), channelId, name, size, fh)
|
||||
func (mr *MockAttachmentServiceMockRecorder) Create(name, size, fh, channelId, replyTo interface{}) *gomock.Call {
|
||||
return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Create", reflect.TypeOf((*MockAttachmentService)(nil).Create), name, size, fh, channelId, replyTo)
|
||||
}
|
||||
|
||||
// OpenOriginal mocks base method
|
||||
|
||||
@@ -214,13 +214,13 @@ func (mr *MockChannelServiceMockRecorder) Delete(ID interface{}) *gomock.Call {
|
||||
}
|
||||
|
||||
// RecordView mocks base method
|
||||
func (m *MockChannelService) RecordView(channelID, userID, lastMessageID uint64) error {
|
||||
ret := m.ctrl.Call(m, "RecordView", channelID, userID, lastMessageID)
|
||||
func (m *MockChannelService) RecordView(userID, channelID, lastMessageID uint64) error {
|
||||
ret := m.ctrl.Call(m, "RecordView", userID, channelID, lastMessageID)
|
||||
ret0, _ := ret[0].(error)
|
||||
return ret0
|
||||
}
|
||||
|
||||
// RecordView indicates an expected call of RecordView
|
||||
func (mr *MockChannelServiceMockRecorder) RecordView(channelID, userID, lastMessageID interface{}) *gomock.Call {
|
||||
return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "RecordView", reflect.TypeOf((*MockChannelService)(nil).RecordView), channelID, userID, lastMessageID)
|
||||
func (mr *MockChannelServiceMockRecorder) RecordView(userID, channelID, lastMessageID interface{}) *gomock.Call {
|
||||
return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "RecordView", reflect.TypeOf((*MockChannelService)(nil).RecordView), userID, channelID, lastMessageID)
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user