mirror of
https://github.com/zitadel/zitadel.git
synced 2024-12-16 21:08:00 +00:00
62bd606593
* fix: don't ignore failed events in handlers * question * fix retries * don't instance ids query * statements can be nil * make unit tests pass * add comments * spool only active instances * feat(config): handle inactive instances * customizable HandleInactiveInstances * test: handling with and w/o inactive instances * docs: describe projection options * enable global handling of inactive instances * accept NowFunc, not Clock interface * add comment about stringer usage * remove enum stringer implementations * fix enum format types * Update internal/eventstore/repository/mock/repository.mock.impl.go Co-authored-by: Silvan <silvan.reusser@gmail.com> --------- Co-authored-by: Silvan <silvan.reusser@gmail.com>
73 lines
2.4 KiB
Go
73 lines
2.4 KiB
Go
package mock
|
|
|
|
import (
|
|
"context"
|
|
"testing"
|
|
|
|
"github.com/golang/mock/gomock"
|
|
"github.com/stretchr/testify/assert"
|
|
|
|
"github.com/zitadel/zitadel/internal/eventstore/repository"
|
|
)
|
|
|
|
func NewRepo(t *testing.T) *MockRepository {
|
|
return NewMockRepository(gomock.NewController(t))
|
|
}
|
|
|
|
func (m *MockRepository) ExpectFilterNoEventsNoError() *MockRepository {
|
|
m.EXPECT().Filter(gomock.Any(), gomock.Any()).Return(nil, nil)
|
|
return m
|
|
}
|
|
|
|
func (m *MockRepository) ExpectFilterEvents(events ...*repository.Event) *MockRepository {
|
|
m.EXPECT().Filter(gomock.Any(), gomock.Any()).Return(events, nil)
|
|
return m
|
|
}
|
|
|
|
func (m *MockRepository) ExpectFilterEventsError(err error) *MockRepository {
|
|
m.EXPECT().Filter(gomock.Any(), gomock.Any()).Return(nil, err)
|
|
return m
|
|
}
|
|
|
|
func (m *MockRepository) ExpectInstanceIDs(hasFilters []*repository.Filter, instanceIDs ...string) *MockRepository {
|
|
matcher := gomock.Any()
|
|
if len(hasFilters) > 0 {
|
|
matcher = &filterQueryMatcher{Filters: [][]*repository.Filter{hasFilters}}
|
|
}
|
|
m.EXPECT().InstanceIDs(gomock.Any(), matcher).Return(instanceIDs, nil)
|
|
return m
|
|
}
|
|
|
|
func (m *MockRepository) ExpectInstanceIDsError(err error) *MockRepository {
|
|
m.EXPECT().InstanceIDs(gomock.Any(), gomock.Any()).Return(nil, err)
|
|
return m
|
|
}
|
|
|
|
func (m *MockRepository) ExpectPush(expectedEvents []*repository.Event, expectedUniqueConstraints ...*repository.UniqueConstraint) *MockRepository {
|
|
m.EXPECT().Push(gomock.Any(), gomock.Any(), gomock.Any()).DoAndReturn(
|
|
func(ctx context.Context, events []*repository.Event, uniqueConstraints ...*repository.UniqueConstraint) error {
|
|
assert.Equal(m.ctrl.T, expectedEvents, events)
|
|
if expectedUniqueConstraints == nil {
|
|
expectedUniqueConstraints = []*repository.UniqueConstraint{}
|
|
}
|
|
assert.Equal(m.ctrl.T, expectedUniqueConstraints, uniqueConstraints)
|
|
return nil
|
|
},
|
|
)
|
|
return m
|
|
}
|
|
|
|
func (m *MockRepository) ExpectPushFailed(err error, expectedEvents []*repository.Event, expectedUniqueConstraints ...*repository.UniqueConstraint) *MockRepository {
|
|
m.EXPECT().Push(gomock.Any(), gomock.Any(), gomock.Any()).DoAndReturn(
|
|
func(ctx context.Context, events []*repository.Event, uniqueConstraints ...*repository.UniqueConstraint) error {
|
|
assert.Equal(m.ctrl.T, expectedEvents, events)
|
|
if expectedUniqueConstraints == nil {
|
|
expectedUniqueConstraints = []*repository.UniqueConstraint{}
|
|
}
|
|
assert.Equal(m.ctrl.T, expectedUniqueConstraints, uniqueConstraints)
|
|
return err
|
|
},
|
|
)
|
|
return m
|
|
}
|