package main import ( "github.com/ceph/go-ceph/rbd" "github.com/stretchr/testify/mock" ) // MockCephConnector type MockCephConnector struct { mock.Mock } func (m *MockCephConnector) ListPools() ([]string, error) { args := m.Called() return args.Get(0).([]string), args.Error(1) } func (m *MockCephConnector) OpenIOContext(poolName string) (IOContexter, error) { args := m.Called(poolName) if args.Get(0) == nil { return nil, args.Error(1) } return args.Get(0).(IOContexter), args.Error(1) } // MockIOContexter type MockIOContexter struct { mock.Mock } func (m *MockIOContexter) Destroy() { m.Called() } func (m *MockIOContexter) GetImageNames() ([]string, error) { args := m.Called() return args.Get(0).([]string), args.Error(1) } func (m *MockIOContexter) GetImage(name string) RBDImager { args := m.Called(name) return args.Get(0).(RBDImager) } // MockRBDImager type MockRBDImager struct { mock.Mock } func (m *MockRBDImager) Open() error { args := m.Called() return args.Error(0) } func (m *MockRBDImager) Close() error { args := m.Called() return args.Error(0) } func (m *MockRBDImager) Stat() (*rbd.ImageInfo, error) { args := m.Called() if args.Get(0) == nil { return nil, args.Error(1) } return args.Get(0).(*rbd.ImageInfo), args.Error(1) }