open-nomad/client/pluginmanager/testing.go
Kris Hicks 54a8b49c5e
pluginmanager: WaitForFirstFingerprint times out (#9597)
As pointed out by @tgross[1], prior to this change we would have been blocking
until all managers waited for first fingerprint rather than timing out as
intended.

1: https://github.com/hashicorp/nomad/pull/9590#discussion_r539534906
2020-12-10 07:27:15 -08:00

23 lines
604 B
Go

package pluginmanager
import "context"
type MockPluginManager struct {
RunF func()
ShutdownF func()
WaitForFirstFingerprintCh <-chan struct{}
}
func (m *MockPluginManager) Run() { m.RunF() }
func (m *MockPluginManager) Shutdown() { m.ShutdownF() }
func (m *MockPluginManager) PluginType() string { return "mock" }
func (m *MockPluginManager) WaitForFirstFingerprint(ctx context.Context) <-chan struct{} {
if m.WaitForFirstFingerprintCh != nil {
return m.WaitForFirstFingerprintCh
}
ch := make(chan struct{})
close(ch)
return ch
}