Adding upstream version 1.34.4.
Signed-off-by: Daniel Baumann <daniel@debian.org>
This commit is contained in:
parent
e393c3af3f
commit
4978089aab
4963 changed files with 677545 additions and 0 deletions
78
plugins/inputs/win_services/win_services_integration_test.go
Normal file
78
plugins/inputs/win_services/win_services_integration_test.go
Normal file
|
@ -0,0 +1,78 @@
|
|||
//go:build windows
|
||||
|
||||
// these tests must be run under administrator account
|
||||
package win_services
|
||||
|
||||
import (
|
||||
"testing"
|
||||
|
||||
"github.com/stretchr/testify/require"
|
||||
|
||||
"github.com/influxdata/telegraf/testutil"
|
||||
)
|
||||
|
||||
var invalidServices = []string{"XYZ1@", "ZYZ@", "SDF_@#"}
|
||||
var knownServices = []string{"LanmanServer", "TermService"}
|
||||
|
||||
func TestListIntegration(t *testing.T) {
|
||||
if testing.Short() {
|
||||
t.Skip("Skipping integration test in short mode")
|
||||
}
|
||||
provider := &mgProvider{}
|
||||
scmgr, err := provider.connect()
|
||||
require.NoError(t, err)
|
||||
defer func() {
|
||||
err := scmgr.disconnect()
|
||||
require.NoError(t, err)
|
||||
}()
|
||||
|
||||
winServices := &WinServices{
|
||||
ServiceNames: knownServices,
|
||||
}
|
||||
|
||||
require.NoError(t, winServices.Init())
|
||||
services, err := winServices.listServices(scmgr)
|
||||
require.NoError(t, err)
|
||||
require.Len(t, services, 2, "Different number of services")
|
||||
require.Equal(t, services[0], knownServices[0])
|
||||
require.Equal(t, services[1], knownServices[1])
|
||||
}
|
||||
|
||||
func TestEmptyListIntegration(t *testing.T) {
|
||||
if testing.Short() {
|
||||
t.Skip("Skipping integration test in short mode")
|
||||
}
|
||||
provider := &mgProvider{}
|
||||
scmgr, err := provider.connect()
|
||||
require.NoError(t, err)
|
||||
defer func() {
|
||||
err := scmgr.disconnect()
|
||||
require.NoError(t, err)
|
||||
}()
|
||||
|
||||
winServices := &WinServices{
|
||||
ServiceNames: make([]string, 0),
|
||||
}
|
||||
|
||||
require.NoError(t, winServices.Init())
|
||||
services, err := winServices.listServices(scmgr)
|
||||
require.NoError(t, err)
|
||||
require.Condition(t, func() bool { return len(services) > 20 }, "Too few service")
|
||||
}
|
||||
|
||||
func TestGatherErrorsIntegration(t *testing.T) {
|
||||
if testing.Short() {
|
||||
t.Skip("Skipping integration test in short mode")
|
||||
}
|
||||
ws := &WinServices{
|
||||
Log: testutil.Logger{},
|
||||
ServiceNames: invalidServices,
|
||||
mgrProvider: &mgProvider{},
|
||||
}
|
||||
|
||||
require.NoError(t, ws.Init())
|
||||
require.Len(t, ws.ServiceNames, 3, "Different number of services")
|
||||
var acc testutil.Accumulator
|
||||
require.NoError(t, ws.Gather(&acc))
|
||||
require.Len(t, acc.Errors, 3, "There should be 3 errors after gather")
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue