// Copyright 2025 CloudWeGo Authors
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.

// Code generated by MockGen. DO NOT EDIT.
// Source: container.go
//
// Generated by this command:
//
//	mockgen -source=container.go -destination=../mock/container_mock.go -package=mock ContainerService
//

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

import (
	reflect "reflect"

	model "github.com/cloudwego/eino-ext/devops/internal/model"
	model0 "github.com/cloudwego/eino-ext/devops/model"
	compose "github.com/cloudwego/eino/compose"
	gomock "go.uber.org/mock/gomock"
)

// MockContainerService is a mock of ContainerService interface.
type MockContainerService struct {
	ctrl     *gomock.Controller
	recorder *MockContainerServiceMockRecorder
}

// MockContainerServiceMockRecorder is the mock recorder for MockContainerService.
type MockContainerServiceMockRecorder struct {
	mock *MockContainerService
}

// NewMockContainerService creates a new mock instance.
func NewMockContainerService(ctrl *gomock.Controller) *MockContainerService {
	mock := &MockContainerService{ctrl: ctrl}
	mock.recorder = &MockContainerServiceMockRecorder{mock}
	return mock
}

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

// AddGraphInfo mocks base method.
func (m *MockContainerService) AddGraphInfo(graphName string, graphInfo *compose.GraphInfo) (string, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "AddGraphInfo", graphName, graphInfo)
	ret0, _ := ret[0].(string)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

// AddGraphInfo indicates an expected call of AddGraphInfo.
func (mr *MockContainerServiceMockRecorder) AddGraphInfo(graphName, graphInfo any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "AddGraphInfo", reflect.TypeOf((*MockContainerService)(nil).AddGraphInfo), graphName, graphInfo)
}

// CreateCanvas mocks base method.
func (m *MockContainerService) CreateCanvas(graphID string) (model0.CanvasInfo, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "CreateCanvas", graphID)
	ret0, _ := ret[0].(model0.CanvasInfo)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

// CreateCanvas indicates an expected call of CreateCanvas.
func (mr *MockContainerServiceMockRecorder) CreateCanvas(graphID any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "CreateCanvas", reflect.TypeOf((*MockContainerService)(nil).CreateCanvas), graphID)
}

// CreateDevGraph mocks base method.
func (m *MockContainerService) CreateDevGraph(graphID, fromNode string) (*model.Graph, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "CreateDevGraph", graphID, fromNode)
	ret0, _ := ret[0].(*model.Graph)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

// CreateDevGraph indicates an expected call of CreateDevGraph.
func (mr *MockContainerServiceMockRecorder) CreateDevGraph(graphID, fromNode any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "CreateDevGraph", reflect.TypeOf((*MockContainerService)(nil).CreateDevGraph), graphID, fromNode)
}

// GetCanvas mocks base method.
func (m *MockContainerService) GetCanvas(graphID string) (model0.CanvasInfo, bool) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "GetCanvas", graphID)
	ret0, _ := ret[0].(model0.CanvasInfo)
	ret1, _ := ret[1].(bool)
	return ret0, ret1
}

// GetCanvas indicates an expected call of GetCanvas.
func (mr *MockContainerServiceMockRecorder) GetCanvas(graphID any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetCanvas", reflect.TypeOf((*MockContainerService)(nil).GetCanvas), graphID)
}

// GetDevGraph mocks base method.
func (m *MockContainerService) GetDevGraph(graphID, fromNode string) (*model.Graph, bool) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "GetDevGraph", graphID, fromNode)
	ret0, _ := ret[0].(*model.Graph)
	ret1, _ := ret[1].(bool)
	return ret0, ret1
}

// GetDevGraph indicates an expected call of GetDevGraph.
func (mr *MockContainerServiceMockRecorder) GetDevGraph(graphID, fromNode any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetDevGraph", reflect.TypeOf((*MockContainerService)(nil).GetDevGraph), graphID, fromNode)
}

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

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