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

// Package usecase_test is a generated GoMock package.
package usecase_test

import (
        context "context"
        reflect "reflect"

        entity "github.com/ferralucho/digital-course-api/internal/entity"
        gomock "github.com/golang/mock/gomock"
        uuid "github.com/google/uuid"
)

// MockCoursePlanning is a mock of CoursePlanning interface.
type MockCoursePlanning struct {
        ctrl     *gomock.Controller
        recorder *MockCoursePlanningMockRecorder
}

// MockCoursePlanningMockRecorder is the mock recorder for MockCoursePlanning.
type MockCoursePlanningMockRecorder struct {
        mock *MockCoursePlanning
}

// NewMockCoursePlanning creates a new mock instance.
func NewMockCoursePlanning(ctrl *gomock.Controller) *MockCoursePlanning {
        mock := &MockCoursePlanning{ctrl: ctrl}
        mock.recorder = &MockCoursePlanningMockRecorder{mock}
        return mock
}

// EXPECT returns an object that allows the caller to indicate expected use.
func (m *MockCoursePlanning) EXPECT() *MockCoursePlanningMockRecorder {
        return m.recorder
}

// CoursePlanning mocks base method.
func (m *MockCoursePlanning) CoursePlanning(arg0 context.Context, arg1 uuid.UUID) (entity.OrderedCoursePlanning, error) {
        m.ctrl.T.Helper()
        ret := m.ctrl.Call(m, "CoursePlanning", arg0, arg1)
        ret0, _ := ret[0].(entity.OrderedCoursePlanning)
        ret1, _ := ret[1].(error)
        return ret0, ret1
}

// CoursePlanning indicates an expected call of CoursePlanning.
func (mr *MockCoursePlanningMockRecorder) CoursePlanning(arg0, arg1 interface{}) *gomock.Call {
        mr.mock.ctrl.T.Helper()
        return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "CoursePlanning", reflect.TypeOf((*MockCoursePlanning)(nil).CoursePlanning), arg0, arg1)
}

// OrderCoursePlanning mocks base method.
func (m *MockCoursePlanning) OrderCoursePlanning(arg0 context.Context, arg1 entity.CoursePlanning) (entity.OrderedCoursePlanning, error) {
        m.ctrl.T.Helper()
        ret := m.ctrl.Call(m, "OrderCoursePlanning", arg0, arg1)
        ret0, _ := ret[0].(entity.OrderedCoursePlanning)
        ret1, _ := ret[1].(error)
        return ret0, ret1
}

// OrderCoursePlanning indicates an expected call of OrderCoursePlanning.
func (mr *MockCoursePlanningMockRecorder) OrderCoursePlanning(arg0, arg1 interface{}) *gomock.Call {
        mr.mock.ctrl.T.Helper()
        return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "OrderCoursePlanning", reflect.TypeOf((*MockCoursePlanning)(nil).OrderCoursePlanning), arg0, arg1)
}

// MockCoursePlanningRepo is a mock of CoursePlanningRepo interface.
type MockCoursePlanningRepo struct {
        ctrl     *gomock.Controller
        recorder *MockCoursePlanningRepoMockRecorder
}

// MockCoursePlanningRepoMockRecorder is the mock recorder for MockCoursePlanningRepo.
type MockCoursePlanningRepoMockRecorder struct {
        mock *MockCoursePlanningRepo
}

// NewMockCoursePlanningRepo creates a new mock instance.
func NewMockCoursePlanningRepo(ctrl *gomock.Controller) *MockCoursePlanningRepo {
        mock := &MockCoursePlanningRepo{ctrl: ctrl}
        mock.recorder = &MockCoursePlanningRepoMockRecorder{mock}
        return mock
}

// EXPECT returns an object that allows the caller to indicate expected use.
func (m *MockCoursePlanningRepo) EXPECT() *MockCoursePlanningRepoMockRecorder {
        return m.recorder
}

// DeleteUserCourses mocks base method.
func (m *MockCoursePlanningRepo) DeleteUserCourses(arg0 context.Context, arg1 uuid.UUID) error {
        m.ctrl.T.Helper()
        ret := m.ctrl.Call(m, "DeleteUserCourses", arg0, arg1)
        ret0, _ := ret[0].(error)
        return ret0
}

// DeleteUserCourses indicates an expected call of DeleteUserCourses.
func (mr *MockCoursePlanningRepoMockRecorder) DeleteUserCourses(arg0, arg1 interface{}) *gomock.Call {
        mr.mock.ctrl.T.Helper()
        return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "DeleteUserCourses", reflect.TypeOf((*MockCoursePlanningRepo)(nil).DeleteUserCourses), arg0, arg1)
}

// GetCoursePlanning mocks base method.
func (m *MockCoursePlanningRepo) GetCoursePlanning(arg0 context.Context, arg1 uuid.UUID) ([]entity.UserOrderedCourse, error) {
        m.ctrl.T.Helper()
        ret := m.ctrl.Call(m, "GetCoursePlanning", arg0, arg1)
        ret0, _ := ret[0].([]entity.UserOrderedCourse)
        ret1, _ := ret[1].(error)
        return ret0, ret1
}

// GetCoursePlanning indicates an expected call of GetCoursePlanning.
func (mr *MockCoursePlanningRepoMockRecorder) GetCoursePlanning(arg0, arg1 interface{}) *gomock.Call {
        mr.mock.ctrl.T.Helper()
        return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetCoursePlanning", reflect.TypeOf((*MockCoursePlanningRepo)(nil).GetCoursePlanning), arg0, arg1)
}

// Store mocks base method.
func (m *MockCoursePlanningRepo) Store(arg0 context.Context, arg1 entity.UserOrderedCourse) error {
        m.ctrl.T.Helper()
        ret := m.ctrl.Call(m, "Store", arg0, arg1)
        ret0, _ := ret[0].(error)
        return ret0
}

// Store indicates an expected call of Store.
func (mr *MockCoursePlanningRepoMockRecorder) Store(arg0, arg1 interface{}) *gomock.Call {
        mr.mock.ctrl.T.Helper()
        return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Store", reflect.TypeOf((*MockCoursePlanningRepo)(nil).Store), arg0, arg1)
}