// Code generated by "./generator ./system/org.lingmo.bluetooth1.agent"; DO NOT EDIT.

// SPDX-FileCopyrightText: 2018 - 2023 UnionTech Software Technology Co., Ltd.
//
// SPDX-License-Identifier: GPL-3.0-or-later
package agent

import (
	"fmt"

	"github.com/godbus/dbus/v5"
	"github.com/LingmoOS/golang-github-lingmo-go-lib/dbusutil/proxy"
	"github.com/stretchr/testify/mock"
)

type MockAgent struct {
	MockInterfaceAgent // interface org.lingmo.Bluetooth1.Agent
	proxy.MockObject
}

type MockInterfaceAgent struct {
	mock.Mock
}

// method AuthorizeService

func (v *MockInterfaceAgent) GoAuthorizeService(flags dbus.Flags, ch chan *dbus.Call, device dbus.ObjectPath, uuid string) *dbus.Call {
	mockArgs := v.Called(flags, ch, device, uuid)

	ret, ok := mockArgs.Get(0).(*dbus.Call)
	if !ok {
		panic(fmt.Sprintf("assert: arguments: 0 failed because object wasn't correct type: %v", mockArgs.Get(0)))
	}

	return ret
}

func (v *MockInterfaceAgent) AuthorizeService(flags dbus.Flags, device dbus.ObjectPath, uuid string) error {
	mockArgs := v.Called(flags, device, uuid)

	return mockArgs.Error(0)
}

// method Cancel

func (v *MockInterfaceAgent) GoCancel(flags dbus.Flags, ch chan *dbus.Call) *dbus.Call {
	mockArgs := v.Called(flags, ch)

	ret, ok := mockArgs.Get(0).(*dbus.Call)
	if !ok {
		panic(fmt.Sprintf("assert: arguments: 0 failed because object wasn't correct type: %v", mockArgs.Get(0)))
	}

	return ret
}

func (v *MockInterfaceAgent) Cancel(flags dbus.Flags) error {
	mockArgs := v.Called(flags)

	return mockArgs.Error(0)
}

// method DisplayPasskey

func (v *MockInterfaceAgent) GoDisplayPasskey(flags dbus.Flags, ch chan *dbus.Call, device dbus.ObjectPath, passkey uint32, entered uint16) *dbus.Call {
	mockArgs := v.Called(flags, ch, device, passkey, entered)

	ret, ok := mockArgs.Get(0).(*dbus.Call)
	if !ok {
		panic(fmt.Sprintf("assert: arguments: 0 failed because object wasn't correct type: %v", mockArgs.Get(0)))
	}

	return ret
}

func (v *MockInterfaceAgent) DisplayPasskey(flags dbus.Flags, device dbus.ObjectPath, passkey uint32, entered uint16) error {
	mockArgs := v.Called(flags, device, passkey, entered)

	return mockArgs.Error(0)
}

// method DisplayPinCode

func (v *MockInterfaceAgent) GoDisplayPinCode(flags dbus.Flags, ch chan *dbus.Call, device dbus.ObjectPath, pinCode string) *dbus.Call {
	mockArgs := v.Called(flags, ch, device, pinCode)

	ret, ok := mockArgs.Get(0).(*dbus.Call)
	if !ok {
		panic(fmt.Sprintf("assert: arguments: 0 failed because object wasn't correct type: %v", mockArgs.Get(0)))
	}

	return ret
}

func (v *MockInterfaceAgent) DisplayPinCode(flags dbus.Flags, device dbus.ObjectPath, pinCode string) error {
	mockArgs := v.Called(flags, device, pinCode)

	return mockArgs.Error(0)
}

// method Release

func (v *MockInterfaceAgent) GoRelease(flags dbus.Flags, ch chan *dbus.Call) *dbus.Call {
	mockArgs := v.Called(flags, ch)

	ret, ok := mockArgs.Get(0).(*dbus.Call)
	if !ok {
		panic(fmt.Sprintf("assert: arguments: 0 failed because object wasn't correct type: %v", mockArgs.Get(0)))
	}

	return ret
}

func (v *MockInterfaceAgent) Release(flags dbus.Flags) error {
	mockArgs := v.Called(flags)

	return mockArgs.Error(0)
}

// method RequestAuthorization

func (v *MockInterfaceAgent) GoRequestAuthorization(flags dbus.Flags, ch chan *dbus.Call, device dbus.ObjectPath) *dbus.Call {
	mockArgs := v.Called(flags, ch, device)

	ret, ok := mockArgs.Get(0).(*dbus.Call)
	if !ok {
		panic(fmt.Sprintf("assert: arguments: 0 failed because object wasn't correct type: %v", mockArgs.Get(0)))
	}

	return ret
}

func (v *MockInterfaceAgent) RequestAuthorization(flags dbus.Flags, device dbus.ObjectPath) error {
	mockArgs := v.Called(flags, device)

	return mockArgs.Error(0)
}

// method RequestConfirmation

func (v *MockInterfaceAgent) GoRequestConfirmation(flags dbus.Flags, ch chan *dbus.Call, device dbus.ObjectPath, passkey uint32) *dbus.Call {
	mockArgs := v.Called(flags, ch, device, passkey)

	ret, ok := mockArgs.Get(0).(*dbus.Call)
	if !ok {
		panic(fmt.Sprintf("assert: arguments: 0 failed because object wasn't correct type: %v", mockArgs.Get(0)))
	}

	return ret
}

func (v *MockInterfaceAgent) RequestConfirmation(flags dbus.Flags, device dbus.ObjectPath, passkey uint32) error {
	mockArgs := v.Called(flags, device, passkey)

	return mockArgs.Error(0)
}

// method RequestPasskey

func (v *MockInterfaceAgent) GoRequestPasskey(flags dbus.Flags, ch chan *dbus.Call, device dbus.ObjectPath) *dbus.Call {
	mockArgs := v.Called(flags, ch, device)

	ret, ok := mockArgs.Get(0).(*dbus.Call)
	if !ok {
		panic(fmt.Sprintf("assert: arguments: 0 failed because object wasn't correct type: %v", mockArgs.Get(0)))
	}

	return ret
}

func (v *MockInterfaceAgent) RequestPasskey(flags dbus.Flags, device dbus.ObjectPath) (uint32, error) {
	mockArgs := v.Called(flags, device)

	ret0, ok := mockArgs.Get(0).(uint32)
	if !ok {
		panic(fmt.Sprintf("assert: arguments: %d failed because object wasn't correct type: %v", 0, mockArgs.Get(0)))
	}

	return ret0, mockArgs.Error(1)
}

// method RequestPinCode

func (v *MockInterfaceAgent) GoRequestPinCode(flags dbus.Flags, ch chan *dbus.Call, device dbus.ObjectPath) *dbus.Call {
	mockArgs := v.Called(flags, ch, device)

	ret, ok := mockArgs.Get(0).(*dbus.Call)
	if !ok {
		panic(fmt.Sprintf("assert: arguments: 0 failed because object wasn't correct type: %v", mockArgs.Get(0)))
	}

	return ret
}

func (v *MockInterfaceAgent) RequestPinCode(flags dbus.Flags, device dbus.ObjectPath) (string, error) {
	mockArgs := v.Called(flags, device)

	return mockArgs.String(0), mockArgs.Error(1)
}

// method SendNotify

func (v *MockInterfaceAgent) GoSendNotify(flags dbus.Flags, ch chan *dbus.Call, arg string) *dbus.Call {
	mockArgs := v.Called(flags, ch, arg)

	ret, ok := mockArgs.Get(0).(*dbus.Call)
	if !ok {
		panic(fmt.Sprintf("assert: arguments: 0 failed because object wasn't correct type: %v", mockArgs.Get(0)))
	}

	return ret
}

func (v *MockInterfaceAgent) SendNotify(flags dbus.Flags, arg string) error {
	mockArgs := v.Called(flags, arg)

	return mockArgs.Error(0)
}
