// Copyright 2020-2024 the Pinniped contributors. All Rights Reserved.
// SPDX-License-Identifier: Apache-2.0
//

// Code generated by MockGen. DO NOT EDIT.
// Source: go.pinniped.dev/cmd/pinniped/cmd (interfaces: OIDCClientOptions)
//
// Generated by this command:
//
//	mockgen -destination=mockoidcclientoptions.go -package=mockoidcclientoptions -copyright_file=../../../hack/header.txt go.pinniped.dev/cmd/pinniped/cmd OIDCClientOptions
//

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

import (
	context "context"
	http "net/http"
	reflect "reflect"

	logr "github.com/go-logr/logr"
	v1alpha1 "go.pinniped.dev/generated/latest/apis/supervisor/idpdiscovery/v1alpha1"
	oidcclient "go.pinniped.dev/pkg/oidcclient"
	gomock "go.uber.org/mock/gomock"
)

// MockOIDCClientOptions is a mock of OIDCClientOptions interface.
type MockOIDCClientOptions struct {
	ctrl     *gomock.Controller
	recorder *MockOIDCClientOptionsMockRecorder
}

// MockOIDCClientOptionsMockRecorder is the mock recorder for MockOIDCClientOptions.
type MockOIDCClientOptionsMockRecorder struct {
	mock *MockOIDCClientOptions
}

// NewMockOIDCClientOptions creates a new mock instance.
func NewMockOIDCClientOptions(ctrl *gomock.Controller) *MockOIDCClientOptions {
	mock := &MockOIDCClientOptions{ctrl: ctrl}
	mock.recorder = &MockOIDCClientOptionsMockRecorder{mock}
	return mock
}

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

// WithClient mocks base method.
func (m *MockOIDCClientOptions) WithClient(arg0 *http.Client) oidcclient.Option {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "WithClient", arg0)
	ret0, _ := ret[0].(oidcclient.Option)
	return ret0
}

// WithClient indicates an expected call of WithClient.
func (mr *MockOIDCClientOptionsMockRecorder) WithClient(arg0 any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "WithClient", reflect.TypeOf((*MockOIDCClientOptions)(nil).WithClient), arg0)
}

// WithContext mocks base method.
func (m *MockOIDCClientOptions) WithContext(arg0 context.Context) oidcclient.Option {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "WithContext", arg0)
	ret0, _ := ret[0].(oidcclient.Option)
	return ret0
}

// WithContext indicates an expected call of WithContext.
func (mr *MockOIDCClientOptionsMockRecorder) WithContext(arg0 any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "WithContext", reflect.TypeOf((*MockOIDCClientOptions)(nil).WithContext), arg0)
}

// WithListenPort mocks base method.
func (m *MockOIDCClientOptions) WithListenPort(arg0 uint16) oidcclient.Option {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "WithListenPort", arg0)
	ret0, _ := ret[0].(oidcclient.Option)
	return ret0
}

// WithListenPort indicates an expected call of WithListenPort.
func (mr *MockOIDCClientOptionsMockRecorder) WithListenPort(arg0 any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "WithListenPort", reflect.TypeOf((*MockOIDCClientOptions)(nil).WithListenPort), arg0)
}

// WithLogger mocks base method.
func (m *MockOIDCClientOptions) WithLogger(arg0 logr.Logger) oidcclient.Option {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "WithLogger", arg0)
	ret0, _ := ret[0].(oidcclient.Option)
	return ret0
}

// WithLogger indicates an expected call of WithLogger.
func (mr *MockOIDCClientOptionsMockRecorder) WithLogger(arg0 any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "WithLogger", reflect.TypeOf((*MockOIDCClientOptions)(nil).WithLogger), arg0)
}

// WithLoginFlow mocks base method.
func (m *MockOIDCClientOptions) WithLoginFlow(arg0 v1alpha1.IDPFlow, arg1 string) oidcclient.Option {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "WithLoginFlow", arg0, arg1)
	ret0, _ := ret[0].(oidcclient.Option)
	return ret0
}

// WithLoginFlow indicates an expected call of WithLoginFlow.
func (mr *MockOIDCClientOptionsMockRecorder) WithLoginFlow(arg0, arg1 any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "WithLoginFlow", reflect.TypeOf((*MockOIDCClientOptions)(nil).WithLoginFlow), arg0, arg1)
}

// WithRequestAudience mocks base method.
func (m *MockOIDCClientOptions) WithRequestAudience(arg0 string) oidcclient.Option {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "WithRequestAudience", arg0)
	ret0, _ := ret[0].(oidcclient.Option)
	return ret0
}

// WithRequestAudience indicates an expected call of WithRequestAudience.
func (mr *MockOIDCClientOptionsMockRecorder) WithRequestAudience(arg0 any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "WithRequestAudience", reflect.TypeOf((*MockOIDCClientOptions)(nil).WithRequestAudience), arg0)
}

// WithScopes mocks base method.
func (m *MockOIDCClientOptions) WithScopes(arg0 []string) oidcclient.Option {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "WithScopes", arg0)
	ret0, _ := ret[0].(oidcclient.Option)
	return ret0
}

// WithScopes indicates an expected call of WithScopes.
func (mr *MockOIDCClientOptionsMockRecorder) WithScopes(arg0 any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "WithScopes", reflect.TypeOf((*MockOIDCClientOptions)(nil).WithScopes), arg0)
}

// WithSessionCache mocks base method.
func (m *MockOIDCClientOptions) WithSessionCache(arg0 oidcclient.SessionCache) oidcclient.Option {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "WithSessionCache", arg0)
	ret0, _ := ret[0].(oidcclient.Option)
	return ret0
}

// WithSessionCache indicates an expected call of WithSessionCache.
func (mr *MockOIDCClientOptionsMockRecorder) WithSessionCache(arg0 any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "WithSessionCache", reflect.TypeOf((*MockOIDCClientOptions)(nil).WithSessionCache), arg0)
}

// WithSkipBrowserOpen mocks base method.
func (m *MockOIDCClientOptions) WithSkipBrowserOpen() oidcclient.Option {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "WithSkipBrowserOpen")
	ret0, _ := ret[0].(oidcclient.Option)
	return ret0
}

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

// WithSkipListen mocks base method.
func (m *MockOIDCClientOptions) WithSkipListen() oidcclient.Option {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "WithSkipListen")
	ret0, _ := ret[0].(oidcclient.Option)
	return ret0
}

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

// WithSkipPrintLoginURL mocks base method.
func (m *MockOIDCClientOptions) WithSkipPrintLoginURL() oidcclient.Option {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "WithSkipPrintLoginURL")
	ret0, _ := ret[0].(oidcclient.Option)
	return ret0
}

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

// WithUpstreamIdentityProvider mocks base method.
func (m *MockOIDCClientOptions) WithUpstreamIdentityProvider(arg0, arg1 string) oidcclient.Option {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "WithUpstreamIdentityProvider", arg0, arg1)
	ret0, _ := ret[0].(oidcclient.Option)
	return ret0
}

// WithUpstreamIdentityProvider indicates an expected call of WithUpstreamIdentityProvider.
func (mr *MockOIDCClientOptionsMockRecorder) WithUpstreamIdentityProvider(arg0, arg1 any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "WithUpstreamIdentityProvider", reflect.TypeOf((*MockOIDCClientOptions)(nil).WithUpstreamIdentityProvider), arg0, arg1)
}
