/
mock_storage_driver.go
115 lines (94 loc) · 2.55 KB
/
mock_storage_driver.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
package mock
import (
"github.com/emccode/rexray/core"
"github.com/emccode/rexray/core/errors"
)
type mockStorDriver struct {
name string
}
type badMockStorDriver struct {
mockStorDriver
}
func newStorDriver() core.Driver {
var d core.StorageDriver = &mockStorDriver{MockStorDriverName}
return d
}
func newBadStorDriver() core.Driver {
var d core.StorageDriver = &badMockStorDriver{
mockStorDriver{BadMockStorDriverName}}
return d
}
func (m *mockStorDriver) Init(r *core.RexRay) error {
return nil
}
func (m *badMockStorDriver) Init(r *core.RexRay) error {
return errors.New("init error")
}
func (m *mockStorDriver) Name() string {
return m.name
}
func (m *mockStorDriver) GetVolumeMapping() ([]*core.BlockDevice, error) {
return []*core.BlockDevice{&core.BlockDevice{
DeviceName: "test",
ProviderName: m.name,
InstanceID: "test",
Region: "test",
}}, nil
}
func (m *mockStorDriver) GetInstance() (*core.Instance, error) {
return &core.Instance{
Name: "test",
InstanceID: "test",
ProviderName: m.name,
Region: "test"}, nil
}
func (m *mockStorDriver) GetVolume(
volumeID, volumeName string) ([]*core.Volume, error) {
return []*core.Volume{&core.Volume{
Name: "test",
VolumeID: "test",
AvailabilityZone: "test",
}}, nil
}
func (m *mockStorDriver) GetVolumeAttach(
volumeID, instanceID string) ([]*core.VolumeAttachment, error) {
return nil, nil
}
func (m *mockStorDriver) CreateSnapshot(
runAsync bool,
snapshotName, volumeID, description string) ([]*core.Snapshot, error) {
return nil, nil
}
func (m *mockStorDriver) GetSnapshot(
volumeID, snapshotID, snapshotName string) ([]*core.Snapshot, error) {
return nil, nil
}
func (m *mockStorDriver) RemoveSnapshot(snapshotID string) error {
return nil
}
func (m *mockStorDriver) CreateVolume(
runAsync bool,
volumeName, volumeID, snapshotID, volumeType string,
IOPS, size int64,
availabilityZone string) (*core.Volume, error) {
return nil, nil
}
func (m *mockStorDriver) RemoveVolume(volumeID string) error {
return nil
}
func (m *mockStorDriver) GetDeviceNextAvailable() (string, error) {
return "", nil
}
func (m *mockStorDriver) AttachVolume(
runAsync bool, volumeID, instanceID string) ([]*core.VolumeAttachment, error) {
return nil, nil
}
func (m *mockStorDriver) DetachVolume(
runAsync bool, volumeID string, instanceID string) error {
return nil
}
func (m *mockStorDriver) CopySnapshot(
runAsync bool, volumeID, snapshotID, snapshotName,
destinationSnapshotName, destinationRegion string) (*core.Snapshot, error) {
return nil, nil
}