// Code generated by MockGen. DO NOT EDIT.
// Source: reserved_ipv6s.go
//
// Generated by this command:
//
//	mockgen -source reserved_ipv6s.go -package=mocks ReservedIPv6sService
//

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

import (
	reflect "reflect"

	do "github.com/digitalocean/doctl/do"
	godo "github.com/digitalocean/godo"
	gomock "go.uber.org/mock/gomock"
)

// MockReservedIPv6sService is a mock of ReservedIPv6sService interface.
type MockReservedIPv6sService struct {
	ctrl     *gomock.Controller
	recorder *MockReservedIPv6sServiceMockRecorder
}

// MockReservedIPv6sServiceMockRecorder is the mock recorder for MockReservedIPv6sService.
type MockReservedIPv6sServiceMockRecorder struct {
	mock *MockReservedIPv6sService
}

// NewMockReservedIPv6sService creates a new mock instance.
func NewMockReservedIPv6sService(ctrl *gomock.Controller) *MockReservedIPv6sService {
	mock := &MockReservedIPv6sService{ctrl: ctrl}
	mock.recorder = &MockReservedIPv6sServiceMockRecorder{mock}
	return mock
}

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

// Assign mocks base method.
func (m *MockReservedIPv6sService) Assign(ip string, dropletID int) (*do.Action, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "Assign", ip, dropletID)
	ret0, _ := ret[0].(*do.Action)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

// Assign indicates an expected call of Assign.
func (mr *MockReservedIPv6sServiceMockRecorder) Assign(ip, dropletID any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Assign", reflect.TypeOf((*MockReservedIPv6sService)(nil).Assign), ip, dropletID)
}

// Create mocks base method.
func (m *MockReservedIPv6sService) Create(ficr *godo.ReservedIPV6CreateRequest) (*do.ReservedIPv6, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "Create", ficr)
	ret0, _ := ret[0].(*do.ReservedIPv6)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

// Create indicates an expected call of Create.
func (mr *MockReservedIPv6sServiceMockRecorder) Create(ficr any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Create", reflect.TypeOf((*MockReservedIPv6sService)(nil).Create), ficr)
}

// Delete mocks base method.
func (m *MockReservedIPv6sService) Delete(ip string) error {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "Delete", ip)
	ret0, _ := ret[0].(error)
	return ret0
}

// Delete indicates an expected call of Delete.
func (mr *MockReservedIPv6sServiceMockRecorder) Delete(ip any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Delete", reflect.TypeOf((*MockReservedIPv6sService)(nil).Delete), ip)
}

// Get mocks base method.
func (m *MockReservedIPv6sService) Get(ip string) (*do.ReservedIPv6, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "Get", ip)
	ret0, _ := ret[0].(*do.ReservedIPv6)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

// Get indicates an expected call of Get.
func (mr *MockReservedIPv6sServiceMockRecorder) Get(ip any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Get", reflect.TypeOf((*MockReservedIPv6sService)(nil).Get), ip)
}

// List mocks base method.
func (m *MockReservedIPv6sService) List() (do.ReservedIPv6s, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "List")
	ret0, _ := ret[0].(do.ReservedIPv6s)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

// List indicates an expected call of List.
func (mr *MockReservedIPv6sServiceMockRecorder) List() *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "List", reflect.TypeOf((*MockReservedIPv6sService)(nil).List))
}

// Unassign mocks base method.
func (m *MockReservedIPv6sService) Unassign(ip string) (*do.Action, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "Unassign", ip)
	ret0, _ := ret[0].(*do.Action)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

// Unassign indicates an expected call of Unassign.
func (mr *MockReservedIPv6sServiceMockRecorder) Unassign(ip any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Unassign", reflect.TypeOf((*MockReservedIPv6sService)(nil).Unassign), ip)
}
