-
Notifications
You must be signed in to change notification settings - Fork 199
/
cacherStub.go
138 lines (113 loc) · 3.03 KB
/
cacherStub.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
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
package testscommon
// CacherStub -
type CacherStub struct {
ClearCalled func()
PutCalled func(key []byte, value interface{}, sizeInBytes int) (evicted bool)
GetCalled func(key []byte) (value interface{}, ok bool)
HasCalled func(key []byte) bool
PeekCalled func(key []byte) (value interface{}, ok bool)
HasOrAddCalled func(key []byte, value interface{}, sizeInBytes int) (has, added bool)
RemoveCalled func(key []byte)
RemoveOldestCalled func()
KeysCalled func() [][]byte
LenCalled func() int
MaxSizeCalled func() int
RegisterHandlerCalled func(func(key []byte, value interface{}))
UnRegisterHandlerCalled func(id string)
}
// NewCacherStub -
func NewCacherStub() *CacherStub {
return &CacherStub{}
}
// Clear -
func (cacher *CacherStub) Clear() {
if cacher.ClearCalled != nil {
cacher.ClearCalled()
}
}
// Put -
func (cacher *CacherStub) Put(key []byte, value interface{}, sizeInBytes int) (evicted bool) {
if cacher.PutCalled != nil {
return cacher.PutCalled(key, value, sizeInBytes)
}
return false
}
// Get -
func (cacher *CacherStub) Get(key []byte) (value interface{}, ok bool) {
if cacher.GetCalled != nil {
return cacher.GetCalled(key)
}
return nil, false
}
// Has -
func (cacher *CacherStub) Has(key []byte) bool {
if cacher.HasCalled != nil {
return cacher.HasCalled(key)
}
return false
}
// Peek -
func (cacher *CacherStub) Peek(key []byte) (value interface{}, ok bool) {
if cacher.PeekCalled != nil {
return cacher.PeekCalled(key)
}
return nil, false
}
// HasOrAdd -
func (cacher *CacherStub) HasOrAdd(key []byte, value interface{}, sizeInBytes int) (has, added bool) {
if cacher.HasOrAddCalled != nil {
return cacher.HasOrAddCalled(key, value, sizeInBytes)
}
return false, false
}
// Remove -
func (cacher *CacherStub) Remove(key []byte) {
if cacher.RemoveCalled != nil {
cacher.RemoveCalled(key)
}
}
// Keys -
func (cacher *CacherStub) Keys() [][]byte {
if cacher.KeysCalled != nil {
return cacher.KeysCalled()
}
return make([][]byte, 0)
}
// Len -
func (cacher *CacherStub) Len() int {
if cacher.LenCalled != nil {
return cacher.LenCalled()
}
return 0
}
// SizeInBytesContained -
func (cacher *CacherStub) SizeInBytesContained() uint64 {
return 0
}
// MaxSize -
func (cacher *CacherStub) MaxSize() int {
if cacher.MaxSizeCalled != nil {
return cacher.MaxSizeCalled()
}
return 0
}
// RegisterHandler -
func (cacher *CacherStub) RegisterHandler(handler func(key []byte, value interface{}), _ string) {
if cacher.RegisterHandlerCalled != nil {
cacher.RegisterHandlerCalled(handler)
}
}
// UnRegisterHandler -
func (cacher *CacherStub) UnRegisterHandler(id string) {
if cacher.UnRegisterHandlerCalled != nil {
cacher.UnRegisterHandlerCalled(id)
}
}
// IsInterfaceNil returns true if there is no value under the interface
func (cacher *CacherStub) IsInterfaceNil() bool {
return cacher == nil
}
// Close -
func (cacher *CacherStub) Close() error {
return nil
}