test(inputs.netstat): Move tests from inputs.net (#14328)
This commit is contained in:
parent
cd83c70241
commit
062ccb3086
|
|
@ -1,17 +1,15 @@
|
|||
package net
|
||||
|
||||
import (
|
||||
"syscall"
|
||||
"testing"
|
||||
|
||||
"github.com/influxdata/telegraf/plugins/inputs/netstat"
|
||||
"github.com/influxdata/telegraf/plugins/inputs/system"
|
||||
"github.com/influxdata/telegraf/testutil"
|
||||
"github.com/shirou/gopsutil/v3/net"
|
||||
"github.com/stretchr/testify/require"
|
||||
)
|
||||
|
||||
func TestNetStats(t *testing.T) {
|
||||
func TestNetIOStats(t *testing.T) {
|
||||
var mps system.MockPS
|
||||
var err error
|
||||
defer mps.AssertExpectations(t)
|
||||
|
|
@ -42,23 +40,6 @@ func TestNetStats(t *testing.T) {
|
|||
}
|
||||
mps.On("NetProto").Return(netprotos, nil)
|
||||
|
||||
netstats := []net.ConnectionStat{
|
||||
{
|
||||
Type: syscall.SOCK_DGRAM,
|
||||
},
|
||||
{
|
||||
Status: "ESTABLISHED",
|
||||
},
|
||||
{
|
||||
Status: "ESTABLISHED",
|
||||
},
|
||||
{
|
||||
Status: "CLOSE",
|
||||
},
|
||||
}
|
||||
|
||||
mps.On("NetConnections").Return(netstats, nil)
|
||||
|
||||
err = (&NetIOStats{ps: &mps, skipChecks: true}).Gather(&acc)
|
||||
require.NoError(t, err)
|
||||
|
||||
|
|
@ -86,34 +67,4 @@ func TestNetStats(t *testing.T) {
|
|||
"interface": "all",
|
||||
}
|
||||
acc.AssertContainsTaggedFields(t, "net", fields2, ntags)
|
||||
|
||||
acc.Metrics = nil
|
||||
|
||||
err = (&netstat.NetStats{
|
||||
PS: &mps,
|
||||
}).Gather(&acc)
|
||||
require.NoError(t, err)
|
||||
|
||||
fields3 := map[string]interface{}{
|
||||
"tcp_established": 2,
|
||||
"tcp_syn_sent": 0,
|
||||
"tcp_syn_recv": 0,
|
||||
"tcp_fin_wait1": 0,
|
||||
"tcp_fin_wait2": 0,
|
||||
"tcp_time_wait": 0,
|
||||
"tcp_close": 1,
|
||||
"tcp_close_wait": 0,
|
||||
"tcp_last_ack": 0,
|
||||
"tcp_listen": 0,
|
||||
"tcp_closing": 0,
|
||||
"tcp_none": 0,
|
||||
"udp_socket": 1,
|
||||
}
|
||||
acc.AssertContainsTaggedFields(t, "netstat", fields3, make(map[string]string))
|
||||
|
||||
acc.Metrics = nil
|
||||
err = (&NetIOStats{ps: &mps, IgnoreProtocolStats: true}).Gather(&acc)
|
||||
require.NoError(t, err)
|
||||
|
||||
acc.AssertDoesNotContainsTaggedFields(t, "netstat", fields3, make(map[string]string))
|
||||
}
|
||||
|
|
|
|||
|
|
@ -0,0 +1,65 @@
|
|||
package netstat
|
||||
|
||||
import (
|
||||
"syscall"
|
||||
"testing"
|
||||
"time"
|
||||
|
||||
"github.com/influxdata/telegraf"
|
||||
"github.com/influxdata/telegraf/metric"
|
||||
"github.com/influxdata/telegraf/plugins/inputs/system"
|
||||
"github.com/influxdata/telegraf/testutil"
|
||||
"github.com/shirou/gopsutil/v3/net"
|
||||
"github.com/stretchr/testify/require"
|
||||
)
|
||||
|
||||
func TestNetStats(t *testing.T) {
|
||||
var mps system.MockPS
|
||||
defer mps.AssertExpectations(t)
|
||||
mps.On("NetConnections").Return([]net.ConnectionStat{
|
||||
{
|
||||
Type: syscall.SOCK_DGRAM,
|
||||
},
|
||||
{
|
||||
Status: "ESTABLISHED",
|
||||
},
|
||||
{
|
||||
Status: "ESTABLISHED",
|
||||
},
|
||||
{
|
||||
Status: "CLOSE",
|
||||
},
|
||||
}, nil)
|
||||
|
||||
var acc testutil.Accumulator
|
||||
require.NoError(t, (&NetStats{PS: &mps}).Gather(&acc))
|
||||
|
||||
expected := []telegraf.Metric{
|
||||
metric.New(
|
||||
"netstat",
|
||||
map[string]string{},
|
||||
map[string]interface{}{
|
||||
"tcp_established": 2,
|
||||
"tcp_syn_sent": 0,
|
||||
"tcp_syn_recv": 0,
|
||||
"tcp_fin_wait1": 0,
|
||||
"tcp_fin_wait2": 0,
|
||||
"tcp_time_wait": 0,
|
||||
"tcp_close": 1,
|
||||
"tcp_close_wait": 0,
|
||||
"tcp_last_ack": 0,
|
||||
"tcp_listen": 0,
|
||||
"tcp_closing": 0,
|
||||
"tcp_none": 0,
|
||||
"udp_socket": 1,
|
||||
},
|
||||
time.Unix(0, 0),
|
||||
),
|
||||
}
|
||||
|
||||
testutil.RequireMetricsEqual(t,
|
||||
expected,
|
||||
acc.GetTelegrafMetrics(),
|
||||
testutil.IgnoreTime(),
|
||||
)
|
||||
}
|
||||
Loading…
Reference in New Issue