//go:build !ignore_autogenerated
// +build !ignore_autogenerated

// Code generated by mga tool. DO NOT EDIT.

package process

import (
	"context"
	"github.com/banzaicloud/pipeline/.gen/pipeline/pipeline"
	"github.com/stretchr/testify/mock"
)

// MockWorkflowService is an autogenerated mock for the WorkflowService type.
type MockWorkflowService struct {
	mock.Mock
}

// CancelProcess provides a mock function.
func (_m *MockWorkflowService) CancelProcess(ctx context.Context, id string) (err error) {
	ret := _m.Called(ctx, id)

	var r0 error
	if rf, ok := ret.Get(0).(func(context.Context, string) error); ok {
		r0 = rf(ctx, id)
	} else {
		r0 = ret.Error(0)
	}

	return r0
}

// GetProcess provides a mock function.
func (_m *MockWorkflowService) GetProcess(ctx context.Context, id string) (process pipeline.Process, err error) {
	ret := _m.Called(ctx, id)

	var r0 pipeline.Process
	if rf, ok := ret.Get(0).(func(context.Context, string) pipeline.Process); ok {
		r0 = rf(ctx, id)
	} else {
		r0 = ret.Get(0).(pipeline.Process)
	}

	var r1 error
	if rf, ok := ret.Get(1).(func(context.Context, string) error); ok {
		r1 = rf(ctx, id)
	} else {
		r1 = ret.Error(1)
	}

	return r0, r1
}

// ListProcesses provides a mock function.
func (_m *MockWorkflowService) ListProcesses(ctx context.Context, query pipeline.Process) (processes []pipeline.Process, err error) {
	ret := _m.Called(ctx, query)

	var r0 []pipeline.Process
	if rf, ok := ret.Get(0).(func(context.Context, pipeline.Process) []pipeline.Process); ok {
		r0 = rf(ctx, query)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).([]pipeline.Process)
		}
	}

	var r1 error
	if rf, ok := ret.Get(1).(func(context.Context, pipeline.Process) error); ok {
		r1 = rf(ctx, query)
	} else {
		r1 = ret.Error(1)
	}

	return r0, r1
}

// LogProcess provides a mock function.
func (_m *MockWorkflowService) LogProcess(ctx context.Context, proc pipeline.Process) (process pipeline.Process, err error) {
	ret := _m.Called(ctx, proc)

	var r0 pipeline.Process
	if rf, ok := ret.Get(0).(func(context.Context, pipeline.Process) pipeline.Process); ok {
		r0 = rf(ctx, proc)
	} else {
		r0 = ret.Get(0).(pipeline.Process)
	}

	var r1 error
	if rf, ok := ret.Get(1).(func(context.Context, pipeline.Process) error); ok {
		r1 = rf(ctx, proc)
	} else {
		r1 = ret.Error(1)
	}

	return r0, r1
}

// LogProcessEvent provides a mock function.
func (_m *MockWorkflowService) LogProcessEvent(ctx context.Context, proc pipeline.ProcessEvent) (processEvent pipeline.ProcessEvent, err error) {
	ret := _m.Called(ctx, proc)

	var r0 pipeline.ProcessEvent
	if rf, ok := ret.Get(0).(func(context.Context, pipeline.ProcessEvent) pipeline.ProcessEvent); ok {
		r0 = rf(ctx, proc)
	} else {
		r0 = ret.Get(0).(pipeline.ProcessEvent)
	}

	var r1 error
	if rf, ok := ret.Get(1).(func(context.Context, pipeline.ProcessEvent) error); ok {
		r1 = rf(ctx, proc)
	} else {
		r1 = ret.Error(1)
	}

	return r0, r1
}

// SignalProcess provides a mock function.
func (_m *MockWorkflowService) SignalProcess(ctx context.Context, id string, signal string, value interface{}) (err error) {
	ret := _m.Called(ctx, id, signal, value)

	var r0 error
	if rf, ok := ret.Get(0).(func(context.Context, string, string, interface{}) error); ok {
		r0 = rf(ctx, id, signal, value)
	} else {
		r0 = ret.Error(0)
	}

	return r0
}
