test(inputs.netstat): Move tests from inputs.net (#14328)
This commit is contained in:
parent
cd83c70241
commit
062ccb3086
|
|
@ -1,17 +1,15 @@
|
||||||
package net
|
package net
|
||||||
|
|
||||||
import (
|
import (
|
||||||
"syscall"
|
|
||||||
"testing"
|
"testing"
|
||||||
|
|
||||||
"github.com/influxdata/telegraf/plugins/inputs/netstat"
|
|
||||||
"github.com/influxdata/telegraf/plugins/inputs/system"
|
"github.com/influxdata/telegraf/plugins/inputs/system"
|
||||||
"github.com/influxdata/telegraf/testutil"
|
"github.com/influxdata/telegraf/testutil"
|
||||||
"github.com/shirou/gopsutil/v3/net"
|
"github.com/shirou/gopsutil/v3/net"
|
||||||
"github.com/stretchr/testify/require"
|
"github.com/stretchr/testify/require"
|
||||||
)
|
)
|
||||||
|
|
||||||
func TestNetStats(t *testing.T) {
|
func TestNetIOStats(t *testing.T) {
|
||||||
var mps system.MockPS
|
var mps system.MockPS
|
||||||
var err error
|
var err error
|
||||||
defer mps.AssertExpectations(t)
|
defer mps.AssertExpectations(t)
|
||||||
|
|
@ -42,23 +40,6 @@ func TestNetStats(t *testing.T) {
|
||||||
}
|
}
|
||||||
mps.On("NetProto").Return(netprotos, nil)
|
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)
|
err = (&NetIOStats{ps: &mps, skipChecks: true}).Gather(&acc)
|
||||||
require.NoError(t, err)
|
require.NoError(t, err)
|
||||||
|
|
||||||
|
|
@ -86,34 +67,4 @@ func TestNetStats(t *testing.T) {
|
||||||
"interface": "all",
|
"interface": "all",
|
||||||
}
|
}
|
||||||
acc.AssertContainsTaggedFields(t, "net", fields2, ntags)
|
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