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
|
package datastore
import "context"
// MockRepositoryStore allows for mocking a RepositoryStore by parametrizing its behavior. All methods
// default to what could be considered success if not set.
type MockRepositoryStore struct {
GetGenerationFunc func(ctx context.Context, virtualStorage, relativePath, storage string) (int, error)
IncrementGenerationFunc func(ctx context.Context, virtualStorage, relativePath, primary string, secondaries []string) error
GetReplicatedGenerationFunc func(ctx context.Context, virtualStorage, relativePath, source, target string) (int, error)
SetGenerationFunc func(ctx context.Context, virtualStorage, relativePath, storage string, generation int) error
CreateRepositoryFunc func(ctx context.Context, virtualStorage, relativePath, storage string, healthyVirtualStorages, healthyPhysicalStorages []string) error
DeleteRepositoryFunc func(ctx context.Context, virtualStorage, relativePath, storage string) error
RenameRepositoryFunc func(ctx context.Context, virtualStorage, relativePath, storage, newRelativePath string) error
GetConsistentStoragesFunc func(ctx context.Context, virtualStorage, relativePath string) (map[string]struct{}, error)
GetPartiallyReplicatedRepositoriesFunc func(ctx context.Context, virtualStorage string, virtualStorageScopedPrimaries bool) ([]OutdatedRepository, error)
DeleteInvalidRepositoryFunc func(ctx context.Context, virtualStorage, relativePath, storage string) error
RepositoryExistsFunc func(ctx context.Context, virtualStorage, relativePath string) (bool, error)
}
func (m MockRepositoryStore) GetGeneration(ctx context.Context, virtualStorage, relativePath, storage string) (int, error) {
if m.GetGenerationFunc == nil {
return GenerationUnknown, nil
}
return m.GetGenerationFunc(ctx, virtualStorage, relativePath, storage)
}
func (m MockRepositoryStore) IncrementGeneration(ctx context.Context, virtualStorage, relativePath, primary string, secondaries []string) error {
if m.IncrementGenerationFunc == nil {
return nil
}
return m.IncrementGenerationFunc(ctx, virtualStorage, relativePath, primary, secondaries)
}
func (m MockRepositoryStore) GetReplicatedGeneration(ctx context.Context, virtualStorage, relativePath, source, target string) (int, error) {
if m.GetReplicatedGenerationFunc == nil {
return GenerationUnknown, nil
}
return m.GetReplicatedGenerationFunc(ctx, virtualStorage, relativePath, source, target)
}
func (m MockRepositoryStore) SetGeneration(ctx context.Context, virtualStorage, relativePath, storage string, generation int) error {
if m.SetGenerationFunc == nil {
return nil
}
return m.SetGenerationFunc(ctx, virtualStorage, relativePath, storage, generation)
}
//nolint:stylecheck
//nolint:golint
func (m MockRepositoryStore) CreateRepository(ctx context.Context, virtualStorage, relativePath, storage string, healthyVirtualStorages, healthyPhysicalStorages []string) error {
if m.CreateRepositoryFunc == nil {
return nil
}
return m.CreateRepositoryFunc(ctx, virtualStorage, relativePath, storage, healthyVirtualStorages, healthyPhysicalStorages)
}
func (m MockRepositoryStore) DeleteRepository(ctx context.Context, virtualStorage, relativePath, storage string) error {
if m.DeleteRepositoryFunc == nil {
return nil
}
return m.DeleteRepositoryFunc(ctx, virtualStorage, relativePath, storage)
}
func (m MockRepositoryStore) RenameRepository(ctx context.Context, virtualStorage, relativePath, storage, newRelativePath string) error {
if m.RenameRepositoryFunc == nil {
return nil
}
return m.RenameRepositoryFunc(ctx, virtualStorage, relativePath, storage, newRelativePath)
}
// GetConsistentStorages returns result of execution of the GetConsistentStoragesFunc field if it is set or an empty map.
func (m MockRepositoryStore) GetConsistentStorages(ctx context.Context, virtualStorage, relativePath string) (map[string]struct{}, error) {
if m.GetConsistentStoragesFunc == nil {
return map[string]struct{}{}, nil
}
return m.GetConsistentStoragesFunc(ctx, virtualStorage, relativePath)
}
func (m MockRepositoryStore) GetPartiallyReplicatedRepositories(ctx context.Context, virtualStorage string, virtualStorageScopedPrimaries bool) ([]OutdatedRepository, error) {
if m.GetPartiallyReplicatedRepositoriesFunc == nil {
return nil, nil
}
return m.GetPartiallyReplicatedRepositoriesFunc(ctx, virtualStorage, virtualStorageScopedPrimaries)
}
func (m MockRepositoryStore) DeleteInvalidRepository(ctx context.Context, virtualStorage, relativePath, storage string) error {
if m.DeleteInvalidRepositoryFunc == nil {
return nil
}
return m.DeleteInvalidRepositoryFunc(ctx, virtualStorage, relativePath, storage)
}
func (m MockRepositoryStore) RepositoryExists(ctx context.Context, virtualStorage, relativePath string) (bool, error) {
if m.RepositoryExistsFunc == nil {
return true, nil
}
return m.RepositoryExistsFunc(ctx, virtualStorage, relativePath)
}
|