// Code generated by MockGen. DO NOT EDIT.
// Source: github.com/aws/eks-anywhere-build-tooling/upgrader/upgrade/mocks (interfaces: SysCalls)

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

import (
	context "context"
	fs "io/fs"
	os "os"
	reflect "reflect"

	gomock "github.com/golang/mock/gomock"
)

// MockSysCalls is a mock of SysCalls interface.
type MockSysCalls struct {
	ctrl     *gomock.Controller
	recorder *MockSysCallsMockRecorder
}

// MockSysCallsMockRecorder is the mock recorder for MockSysCalls.
type MockSysCallsMockRecorder struct {
	mock *MockSysCalls
}

// NewMockSysCalls creates a new mock instance.
func NewMockSysCalls(ctrl *gomock.Controller) *MockSysCalls {
	mock := &MockSysCalls{ctrl: ctrl}
	mock.recorder = &MockSysCallsMockRecorder{mock}
	return mock
}

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

// ExecCommand mocks base method.
func (m *MockSysCalls) ExecCommand(arg0 context.Context, arg1 string, arg2 ...string) ([]byte, error) {
	m.ctrl.T.Helper()
	varargs := []interface{}{arg0, arg1}
	for _, a := range arg2 {
		varargs = append(varargs, a)
	}
	ret := m.ctrl.Call(m, "ExecCommand", varargs...)
	ret0, _ := ret[0].([]byte)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

// ExecCommand indicates an expected call of ExecCommand.
func (mr *MockSysCallsMockRecorder) ExecCommand(arg0, arg1 interface{}, arg2 ...interface{}) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	varargs := append([]interface{}{arg0, arg1}, arg2...)
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "ExecCommand", reflect.TypeOf((*MockSysCalls)(nil).ExecCommand), varargs...)
}

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

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

// MkdirAll mocks base method.
func (m *MockSysCalls) MkdirAll(arg0 string, arg1 fs.FileMode) error {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "MkdirAll", arg0, arg1)
	ret0, _ := ret[0].(error)
	return ret0
}

// MkdirAll indicates an expected call of MkdirAll.
func (mr *MockSysCallsMockRecorder) MkdirAll(arg0, arg1 interface{}) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "MkdirAll", reflect.TypeOf((*MockSysCalls)(nil).MkdirAll), arg0, arg1)
}

// OpenFile mocks base method.
func (m *MockSysCalls) OpenFile(arg0 string, arg1 int, arg2 fs.FileMode) (*os.File, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "OpenFile", arg0, arg1, arg2)
	ret0, _ := ret[0].(*os.File)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

// OpenFile indicates an expected call of OpenFile.
func (mr *MockSysCallsMockRecorder) OpenFile(arg0, arg1, arg2 interface{}) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "OpenFile", reflect.TypeOf((*MockSysCalls)(nil).OpenFile), arg0, arg1, arg2)
}

// ReadFile mocks base method.
func (m *MockSysCalls) ReadFile(arg0 string) ([]byte, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "ReadFile", arg0)
	ret0, _ := ret[0].([]byte)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

// ReadFile indicates an expected call of ReadFile.
func (mr *MockSysCallsMockRecorder) ReadFile(arg0 interface{}) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "ReadFile", reflect.TypeOf((*MockSysCalls)(nil).ReadFile), arg0)
}

// Stat mocks base method.
func (m *MockSysCalls) Stat(arg0 string) (fs.FileInfo, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "Stat", arg0)
	ret0, _ := ret[0].(fs.FileInfo)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

// Stat indicates an expected call of Stat.
func (mr *MockSysCallsMockRecorder) Stat(arg0 interface{}) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Stat", reflect.TypeOf((*MockSysCalls)(nil).Stat), arg0)
}

// WriteFile mocks base method.
func (m *MockSysCalls) WriteFile(arg0 string, arg1 []byte, arg2 fs.FileMode) error {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "WriteFile", arg0, arg1, arg2)
	ret0, _ := ret[0].(error)
	return ret0
}

// WriteFile indicates an expected call of WriteFile.
func (mr *MockSysCallsMockRecorder) WriteFile(arg0, arg1, arg2 interface{}) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "WriteFile", reflect.TypeOf((*MockSysCalls)(nil).WriteFile), arg0, arg1, arg2)
}
