65ce3ec8de
The plugin loader loads task and device driver plugins which are not used on server nodes.
34 lines
703 B
Go
34 lines
703 B
Go
package agent
|
|
|
|
import (
|
|
"testing"
|
|
|
|
"github.com/hashicorp/nomad/api"
|
|
"github.com/shoenig/test/must"
|
|
)
|
|
|
|
func TestPlugins_WhenNotClientSkip(t *testing.T) {
|
|
s, _, _ := testServer(t, false, nil)
|
|
must.Nil(t, s.Agent.pluginSingletonLoader)
|
|
}
|
|
|
|
func TestPlugins_WhenClientRun(t *testing.T) {
|
|
s, _, _ := testServer(t, true, nil)
|
|
must.NotNil(t, s.Agent.pluginSingletonLoader)
|
|
}
|
|
|
|
func testServer(t *testing.T, runClient bool, cb func(*Config)) (*TestAgent, *api.Client, string) {
|
|
// Make a new test server
|
|
a := NewTestAgent(t, t.Name(), func(config *Config) {
|
|
config.Client.Enabled = runClient
|
|
|
|
if cb != nil {
|
|
cb(config)
|
|
}
|
|
})
|
|
t.Cleanup(a.Shutdown)
|
|
|
|
c := a.Client()
|
|
return a, c, a.HTTPAddr()
|
|
}
|