// Copyright 2020-2025 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"

	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
	isgomock struct{}
}

// 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(httpClient *http.Client) oidcclient.Option {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "WithClient", httpClient)
	ret0, _ := ret[0].(oidcclient.Option)
	return ret0
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

// 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(upstreamName, upstreamType string) oidcclient.Option {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "WithUpstreamIdentityProvider", upstreamName, upstreamType)
	ret0, _ := ret[0].(oidcclient.Option)
	return ret0
}

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