aboutsummaryrefslogtreecommitdiff
path: root/internal/db/mocks.go
diff options
context:
space:
mode:
Diffstat (limited to 'internal/db/mocks.go')
-rw-r--r--internal/db/mocks.go153
1 files changed, 153 insertions, 0 deletions
diff --git a/internal/db/mocks.go b/internal/db/mocks.go
index d3e302a8..ddf9ee5d 100644
--- a/internal/db/mocks.go
+++ b/internal/db/mocks.go
@@ -2371,6 +2371,159 @@ func (c PermsStoreSetRepoPermsFuncCall) Results() []interface{} {
return []interface{}{c.Result0}
}
+// MockReposStore is a mock implementation of the ReposStore interface (from
+// the package gogs.io/gogs/internal/db) used for unit testing.
+type MockReposStore struct {
+ // GetByNameFunc is an instance of a mock function object controlling
+ // the behavior of the method GetByName.
+ GetByNameFunc *ReposStoreGetByNameFunc
+}
+
+// NewMockReposStore creates a new mock of the ReposStore interface. All
+// methods return zero values for all results, unless overwritten.
+func NewMockReposStore() *MockReposStore {
+ return &MockReposStore{
+ GetByNameFunc: &ReposStoreGetByNameFunc{
+ defaultHook: func(context.Context, int64, string) (r0 *Repository, r1 error) {
+ return
+ },
+ },
+ }
+}
+
+// NewStrictMockReposStore creates a new mock of the ReposStore interface.
+// All methods panic on invocation, unless overwritten.
+func NewStrictMockReposStore() *MockReposStore {
+ return &MockReposStore{
+ GetByNameFunc: &ReposStoreGetByNameFunc{
+ defaultHook: func(context.Context, int64, string) (*Repository, error) {
+ panic("unexpected invocation of MockReposStore.GetByName")
+ },
+ },
+ }
+}
+
+// NewMockReposStoreFrom creates a new mock of the MockReposStore interface.
+// All methods delegate to the given implementation, unless overwritten.
+func NewMockReposStoreFrom(i ReposStore) *MockReposStore {
+ return &MockReposStore{
+ GetByNameFunc: &ReposStoreGetByNameFunc{
+ defaultHook: i.GetByName,
+ },
+ }
+}
+
+// ReposStoreGetByNameFunc describes the behavior when the GetByName method
+// of the parent MockReposStore instance is invoked.
+type ReposStoreGetByNameFunc struct {
+ defaultHook func(context.Context, int64, string) (*Repository, error)
+ hooks []func(context.Context, int64, string) (*Repository, error)
+ history []ReposStoreGetByNameFuncCall
+ mutex sync.Mutex
+}
+
+// GetByName delegates to the next hook function in the queue and stores the
+// parameter and result values of this invocation.
+func (m *MockReposStore) GetByName(v0 context.Context, v1 int64, v2 string) (*Repository, error) {
+ r0, r1 := m.GetByNameFunc.nextHook()(v0, v1, v2)
+ m.GetByNameFunc.appendCall(ReposStoreGetByNameFuncCall{v0, v1, v2, r0, r1})
+ return r0, r1
+}
+
+// SetDefaultHook sets function that is called when the GetByName method of
+// the parent MockReposStore instance is invoked and the hook queue is
+// empty.
+func (f *ReposStoreGetByNameFunc) SetDefaultHook(hook func(context.Context, int64, string) (*Repository, error)) {
+ f.defaultHook = hook
+}
+
+// PushHook adds a function to the end of hook queue. Each invocation of the
+// GetByName method of the parent MockReposStore instance invokes the hook
+// at the front of the queue and discards it. After the queue is empty, the
+// default hook function is invoked for any future action.
+func (f *ReposStoreGetByNameFunc) PushHook(hook func(context.Context, int64, string) (*Repository, error)) {
+ f.mutex.Lock()
+ f.hooks = append(f.hooks, hook)
+ f.mutex.Unlock()
+}
+
+// SetDefaultReturn calls SetDefaultHook with a function that returns the
+// given values.
+func (f *ReposStoreGetByNameFunc) SetDefaultReturn(r0 *Repository, r1 error) {
+ f.SetDefaultHook(func(context.Context, int64, string) (*Repository, error) {
+ return r0, r1
+ })
+}
+
+// PushReturn calls PushHook with a function that returns the given values.
+func (f *ReposStoreGetByNameFunc) PushReturn(r0 *Repository, r1 error) {
+ f.PushHook(func(context.Context, int64, string) (*Repository, error) {
+ return r0, r1
+ })
+}
+
+func (f *ReposStoreGetByNameFunc) nextHook() func(context.Context, int64, string) (*Repository, error) {
+ f.mutex.Lock()
+ defer f.mutex.Unlock()
+
+ if len(f.hooks) == 0 {
+ return f.defaultHook
+ }
+
+ hook := f.hooks[0]
+ f.hooks = f.hooks[1:]
+ return hook
+}
+
+func (f *ReposStoreGetByNameFunc) appendCall(r0 ReposStoreGetByNameFuncCall) {
+ f.mutex.Lock()
+ f.history = append(f.history, r0)
+ f.mutex.Unlock()
+}
+
+// History returns a sequence of ReposStoreGetByNameFuncCall objects
+// describing the invocations of this function.
+func (f *ReposStoreGetByNameFunc) History() []ReposStoreGetByNameFuncCall {
+ f.mutex.Lock()
+ history := make([]ReposStoreGetByNameFuncCall, len(f.history))
+ copy(history, f.history)
+ f.mutex.Unlock()
+
+ return history
+}
+
+// ReposStoreGetByNameFuncCall is an object that describes an invocation of
+// method GetByName on an instance of MockReposStore.
+type ReposStoreGetByNameFuncCall struct {
+ // Arg0 is the value of the 1st argument passed to this method
+ // invocation.
+ Arg0 context.Context
+ // Arg1 is the value of the 2nd argument passed to this method
+ // invocation.
+ Arg1 int64
+ // Arg2 is the value of the 3rd argument passed to this method
+ // invocation.
+ Arg2 string
+ // Result0 is the value of the 1st result returned from this method
+ // invocation.
+ Result0 *Repository
+ // Result1 is the value of the 2nd result returned from this method
+ // invocation.
+ Result1 error
+}
+
+// Args returns an interface slice containing the arguments of this
+// invocation.
+func (c ReposStoreGetByNameFuncCall) Args() []interface{} {
+ return []interface{}{c.Arg0, c.Arg1, c.Arg2}
+}
+
+// Results returns an interface slice containing the results of this
+// invocation.
+func (c ReposStoreGetByNameFuncCall) Results() []interface{} {
+ return []interface{}{c.Result0, c.Result1}
+}
+
// MockTwoFactorsStore is a mock implementation of the TwoFactorsStore
// interface (from the package gogs.io/gogs/internal/db) used for unit
// testing.