master
go 38 lines 1.04 KB
Raw
1 // SPDX-License-Identifier: GPL-3.0-or-later
2
3 package sd
4
5 import (
6 "bytes"
7 "fmt"
8 "testing"
9
10 "github.com/netdata/netdata/go/plugins/pkg/netdataapi"
11 "github.com/netdata/netdata/go/plugins/plugin/framework/dyncfg"
12 "github.com/stretchr/testify/assert"
13 "github.com/stretchr/testify/require"
14 )
15
16 func TestNewServiceDiscovery_UsesConfiguredOutForDyncfgResponder(t *testing.T) {
17 const pluginName = "test"
18
19 var buf bytes.Buffer
20 sd, err := NewServiceDiscovery(Config{
21 PluginName: pluginName,
22 Out: &buf,
23 Discoverers: NewRegistry(),
24 })
25 require.NoError(t, err)
26
27 sd.dyncfgApi.ConfigCreate(netdataapi.ConfigOpts{
28 ID: "test:sd:discoverer",
29 Status: dyncfg.StatusAccepted.String(),
30 ConfigType: dyncfg.ConfigTypeTemplate.String(),
31 Path: fmt.Sprintf(dyncfgSDPath, pluginName),
32 SourceType: "internal",
33 Source: "internal",
34 SupportedCommands: "schema",
35 })
36
37 assert.Contains(t, buf.String(), "CONFIG test:sd:discoverer create accepted template /collectors/test/ServiceDiscovery")
38 }