// Code generated by MockGen. DO NOT EDIT.
// Source: extension/extension.go

package mock_extension

import (
	"github.com/cloudwan/gohan/extension"
	schema "github.com/cloudwan/gohan/schema"
	gomock "github.com/golang/mock/gomock"
	reflect "reflect"
	time "time"
)

// MockEnvironment is a mock of Environment interface
type MockEnvironment struct {
	ctrl     *gomock.Controller
	recorder *MockEnvironmentMockRecorder
}

// MockEnvironmentMockRecorder is the mock recorder for MockEnvironment
type MockEnvironmentMockRecorder struct {
	mock *MockEnvironment
}

// NewMockEnvironment creates a new mock instance
func NewMockEnvironment(ctrl *gomock.Controller) *MockEnvironment {
	mock := &MockEnvironment{ctrl: ctrl}
	mock.recorder = &MockEnvironmentMockRecorder{mock}
	return mock
}

// EXPECT returns an object that allows the caller to indicate expected use
func (_m *MockEnvironment) EXPECT() *MockEnvironmentMockRecorder {
	return _m.recorder
}

// LoadExtensionsForPath mocks base method
func (_m *MockEnvironment) LoadExtensionsForPath(extensions []*schema.Extension, timeLimit time.Duration, timeLimits []*schema.PathEventTimeLimit, path string) error {
	ret := _m.ctrl.Call(_m, "LoadExtensionsForPath", extensions, timeLimit, timeLimits, path)
	ret0, _ := ret[0].(error)
	return ret0
}

// LoadExtensionsForPath indicates an expected call of LoadExtensionsForPath
func (_mr *MockEnvironmentMockRecorder) LoadExtensionsForPath(arg0, arg1, arg2, arg3 interface{}) *gomock.Call {
	return _mr.mock.ctrl.RecordCallWithMethodType(_mr.mock, "LoadExtensionsForPath", reflect.TypeOf((*MockEnvironment)(nil).LoadExtensionsForPath), arg0, arg1, arg2, arg3)
}

// HandleEvent mocks base method
func (_m *MockEnvironment) HandleEvent(event string, context map[string]interface{}) error {
	ret := _m.ctrl.Call(_m, "HandleEvent", event, context)
	ret0, _ := ret[0].(error)
	return ret0
}

// HandleEvent indicates an expected call of HandleEvent
func (_mr *MockEnvironmentMockRecorder) HandleEvent(arg0, arg1 interface{}) *gomock.Call {
	return _mr.mock.ctrl.RecordCallWithMethodType(_mr.mock, "HandleEvent", reflect.TypeOf((*MockEnvironment)(nil).HandleEvent), arg0, arg1)
}

// Clone mocks base method
func (_m *MockEnvironment) Clone() extension.Environment {
	ret := _m.ctrl.Call(_m, "Clone")
	ret0, _ := ret[0].(extension.Environment)
	return ret0
}

// Clone indicates an expected call of Clone
func (_mr *MockEnvironmentMockRecorder) Clone() *gomock.Call {
	return _mr.mock.ctrl.RecordCallWithMethodType(_mr.mock, "Clone", reflect.TypeOf((*MockEnvironment)(nil).Clone))
}

// IsEventHandled mocks base method
func (_m *MockEnvironment) IsEventHandled(event string, context map[string]interface{}) bool {
	ret := _m.ctrl.Call(_m, "IsEventHandled", event, context)
	ret0, _ := ret[0].(bool)
	return ret0
}

// IsEventHandled indicates an expected call of IsEventHandled
func (_mr *MockEnvironmentMockRecorder) IsEventHandled(arg0, arg1 interface{}) *gomock.Call {
	return _mr.mock.ctrl.RecordCallWithMethodType(_mr.mock, "IsEventHandled", reflect.TypeOf((*MockEnvironment)(nil).IsEventHandled), arg0, arg1)
}
