github.com/netdata/go.d.plugin@v0.58.1/agent/module/mock.go (about) 1 // SPDX-License-Identifier: GPL-3.0-or-later 2 3 package module 4 5 // MockModule MockModule. 6 type MockModule struct { 7 Base 8 9 InitFunc func() bool 10 CheckFunc func() bool 11 ChartsFunc func() *Charts 12 CollectFunc func() map[string]int64 13 CleanupFunc func() 14 CleanupDone bool 15 } 16 17 // Init invokes InitFunc. 18 func (m MockModule) Init() bool { 19 if m.InitFunc == nil { 20 return true 21 } 22 return m.InitFunc() 23 } 24 25 // Check invokes CheckFunc. 26 func (m MockModule) Check() bool { 27 if m.CheckFunc == nil { 28 return true 29 } 30 return m.CheckFunc() 31 } 32 33 // Charts invokes ChartsFunc. 34 func (m MockModule) Charts() *Charts { 35 if m.ChartsFunc == nil { 36 return nil 37 } 38 return m.ChartsFunc() 39 } 40 41 // Collect invokes CollectDunc. 42 func (m MockModule) Collect() map[string]int64 { 43 if m.CollectFunc == nil { 44 return nil 45 } 46 return m.CollectFunc() 47 } 48 49 // Cleanup sets CleanupDone to true. 50 func (m *MockModule) Cleanup() { 51 if m.CleanupFunc != nil { 52 m.CleanupFunc() 53 } 54 m.CleanupDone = true 55 }