chore(linters): Fix findings found by `testifylint`: `go-require` for`instrumental` and parsers/processors (#15887)
This commit is contained in:
parent
7212b61389
commit
ee9c47cc7a
|
|
@ -2,6 +2,7 @@ package instrumental
|
||||||
|
|
||||||
import (
|
import (
|
||||||
"bufio"
|
"bufio"
|
||||||
|
"errors"
|
||||||
"io"
|
"io"
|
||||||
"net"
|
"net"
|
||||||
"net/textproto"
|
"net/textproto"
|
||||||
|
|
@ -88,63 +89,154 @@ func TCPServer(t *testing.T, wg *sync.WaitGroup) int {
|
||||||
|
|
||||||
go func() {
|
go func() {
|
||||||
defer wg.Done()
|
defer wg.Done()
|
||||||
|
defer tcpServer.Close()
|
||||||
|
|
||||||
conn, err := tcpServer.Accept()
|
conn, err := tcpServer.Accept()
|
||||||
require.NoError(t, err)
|
if err != nil {
|
||||||
|
t.Error(err)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
defer func() {
|
||||||
|
if err := conn.Close(); err != nil {
|
||||||
|
t.Error(err)
|
||||||
|
}
|
||||||
|
}()
|
||||||
|
|
||||||
err = conn.SetDeadline(time.Now().Add(1 * time.Second))
|
err = conn.SetDeadline(time.Now().Add(1 * time.Second))
|
||||||
require.NoError(t, err)
|
if err != nil {
|
||||||
|
t.Error(err)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
reader := bufio.NewReader(conn)
|
reader := bufio.NewReader(conn)
|
||||||
tp := textproto.NewReader(reader)
|
tp := textproto.NewReader(reader)
|
||||||
|
|
||||||
|
helloExpected := "hello version go/telegraf/1.1"
|
||||||
hello, err := tp.ReadLine()
|
hello, err := tp.ReadLine()
|
||||||
require.NoError(t, err)
|
if err != nil {
|
||||||
require.Equal(t, "hello version go/telegraf/1.1", hello)
|
t.Error(err)
|
||||||
auth, err := tp.ReadLine()
|
return
|
||||||
require.NoError(t, err)
|
} else if hello != helloExpected {
|
||||||
require.Equal(t, "authenticate abc123token", auth)
|
t.Errorf("expected %q, got %q", helloExpected, hello)
|
||||||
_, err = conn.Write([]byte("ok\nok\n"))
|
return
|
||||||
require.NoError(t, err)
|
}
|
||||||
|
|
||||||
|
authExpected := "authenticate abc123token"
|
||||||
|
auth, err := tp.ReadLine()
|
||||||
|
if err != nil {
|
||||||
|
t.Error(err)
|
||||||
|
return
|
||||||
|
} else if auth != authExpected {
|
||||||
|
t.Errorf("expected %q, got %q", authExpected, auth)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
_, err = conn.Write([]byte("ok\nok\n"))
|
||||||
|
if err != nil {
|
||||||
|
t.Error(err)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
data1Expected := "gauge my.prefix.192_168_0_1.mymeasurement.myfield 3.14 1289430000"
|
||||||
data1, err := tp.ReadLine()
|
data1, err := tp.ReadLine()
|
||||||
require.NoError(t, err)
|
if err != nil {
|
||||||
require.Equal(t, "gauge my.prefix.192_168_0_1.mymeasurement.myfield 3.14 1289430000", data1)
|
t.Error(err)
|
||||||
|
return
|
||||||
|
} else if data1 != data1Expected {
|
||||||
|
t.Errorf("expected %q, got %q", data1Expected, data1)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
data2Expected := "gauge my.prefix.192_168_0_1.mymeasurement 3.14 1289430000"
|
||||||
data2, err := tp.ReadLine()
|
data2, err := tp.ReadLine()
|
||||||
require.NoError(t, err)
|
if err != nil {
|
||||||
require.Equal(t, "gauge my.prefix.192_168_0_1.mymeasurement 3.14 1289430000", data2)
|
t.Error(err)
|
||||||
|
return
|
||||||
|
} else if data2 != data2Expected {
|
||||||
|
t.Errorf("expected %q, got %q", data2Expected, data2)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
conn, err = tcpServer.Accept()
|
conn, err = tcpServer.Accept()
|
||||||
require.NoError(t, err)
|
if err != nil {
|
||||||
|
t.Error(err)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
err = conn.SetDeadline(time.Now().Add(1 * time.Second))
|
err = conn.SetDeadline(time.Now().Add(1 * time.Second))
|
||||||
require.NoError(t, err)
|
if err != nil {
|
||||||
|
t.Error(err)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
reader = bufio.NewReader(conn)
|
reader = bufio.NewReader(conn)
|
||||||
tp = textproto.NewReader(reader)
|
tp = textproto.NewReader(reader)
|
||||||
|
|
||||||
|
helloExpected = "hello version go/telegraf/1.1"
|
||||||
hello, err = tp.ReadLine()
|
hello, err = tp.ReadLine()
|
||||||
require.NoError(t, err)
|
if err != nil {
|
||||||
require.Equal(t, "hello version go/telegraf/1.1", hello)
|
t.Error(err)
|
||||||
|
return
|
||||||
|
} else if hello != helloExpected {
|
||||||
|
t.Errorf("expected %q, got %q", helloExpected, hello)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
authExpected = "authenticate abc123token"
|
||||||
auth, err = tp.ReadLine()
|
auth, err = tp.ReadLine()
|
||||||
require.NoError(t, err)
|
if err != nil {
|
||||||
require.Equal(t, "authenticate abc123token", auth)
|
t.Error(err)
|
||||||
|
return
|
||||||
|
} else if auth != authExpected {
|
||||||
|
t.Errorf("expected %q, got %q", authExpected, auth)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
_, err = conn.Write([]byte("ok\nok\n"))
|
_, err = conn.Write([]byte("ok\nok\n"))
|
||||||
require.NoError(t, err)
|
if err != nil {
|
||||||
|
t.Error(err)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
data3Expected := "increment my.prefix.192_168_0_1.my_histogram 3.14 1289430000"
|
||||||
data3, err := tp.ReadLine()
|
data3, err := tp.ReadLine()
|
||||||
require.NoError(t, err)
|
if err != nil {
|
||||||
require.Equal(t, "increment my.prefix.192_168_0_1.my_histogram 3.14 1289430000", data3)
|
t.Error(err)
|
||||||
|
return
|
||||||
|
} else if data3 != data3Expected {
|
||||||
|
t.Errorf("expected %q, got %q", data3Expected, data3)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
data4Expected := "increment my.prefix.192_168_0_1_8888_123.bad_metric_name 1 1289430000"
|
||||||
data4, err := tp.ReadLine()
|
data4, err := tp.ReadLine()
|
||||||
require.NoError(t, err)
|
if err != nil {
|
||||||
require.Equal(t, "increment my.prefix.192_168_0_1_8888_123.bad_metric_name 1 1289430000", data4)
|
t.Error(err)
|
||||||
|
return
|
||||||
|
} else if data4 != data4Expected {
|
||||||
|
t.Errorf("expected %q, got %q", data4Expected, data4)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
data5Expected := "increment my.prefix.192_168_0_1.my_counter 3.14 1289430000"
|
||||||
data5, err := tp.ReadLine()
|
data5, err := tp.ReadLine()
|
||||||
require.NoError(t, err)
|
if err != nil {
|
||||||
require.Equal(t, "increment my.prefix.192_168_0_1.my_counter 3.14 1289430000", data5)
|
t.Error(err)
|
||||||
|
return
|
||||||
|
} else if data5 != data5Expected {
|
||||||
|
t.Errorf("expected %q, got %q", data5Expected, data5)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
data6Expected := ""
|
||||||
data6, err := tp.ReadLine()
|
data6, err := tp.ReadLine()
|
||||||
require.ErrorIs(t, err, io.EOF)
|
if !errors.Is(err, io.EOF) {
|
||||||
require.Equal(t, "", data6)
|
t.Error(err)
|
||||||
|
return
|
||||||
err = conn.Close()
|
} else if data6 != data6Expected {
|
||||||
require.NoError(t, err)
|
t.Errorf("expected %q, got %q", data6Expected, data6)
|
||||||
|
return
|
||||||
|
}
|
||||||
}()
|
}()
|
||||||
|
|
||||||
return tcpServer.Addr().(*net.TCPAddr).Port
|
return tcpServer.Addr().(*net.TCPAddr).Port
|
||||||
|
|
|
||||||
|
|
@ -1006,9 +1006,11 @@ func TestStreamParserProducesAllAvailableMetrics(t *testing.T) {
|
||||||
parser := NewStreamParser(r)
|
parser := NewStreamParser(r)
|
||||||
parser.SetTimeFunc(DefaultTime)
|
parser.SetTimeFunc(DefaultTime)
|
||||||
|
|
||||||
|
ch := make(chan error)
|
||||||
go func() {
|
go func() {
|
||||||
_, err := w.Write([]byte("metric value=1\nmetric2 value=1\n"))
|
_, err := w.Write([]byte("metric value=1\nmetric2 value=1\n"))
|
||||||
require.NoError(t, err)
|
ch <- err
|
||||||
|
close(ch)
|
||||||
}()
|
}()
|
||||||
|
|
||||||
_, err := parser.Next()
|
_, err := parser.Next()
|
||||||
|
|
@ -1017,6 +1019,9 @@ func TestStreamParserProducesAllAvailableMetrics(t *testing.T) {
|
||||||
// should not block on second read
|
// should not block on second read
|
||||||
_, err = parser.Next()
|
_, err = parser.Next()
|
||||||
require.NoError(t, err)
|
require.NoError(t, err)
|
||||||
|
|
||||||
|
err = <-ch
|
||||||
|
require.NoError(t, err)
|
||||||
}
|
}
|
||||||
|
|
||||||
const benchmarkData = `benchmark,tags_host=myhost,tags_platform=python,tags_sdkver=3.11.5 value=5 1653643421
|
const benchmarkData = `benchmark,tags_host=myhost,tags_platform=python,tags_sdkver=3.11.5 value=5 1653643421
|
||||||
|
|
|
||||||
|
|
@ -973,9 +973,11 @@ func TestStreamParserProducesAllAvailableMetrics(t *testing.T) {
|
||||||
parser := NewStreamParser(r)
|
parser := NewStreamParser(r)
|
||||||
parser.SetTimeFunc(DefaultTime)
|
parser.SetTimeFunc(DefaultTime)
|
||||||
|
|
||||||
|
ch := make(chan error)
|
||||||
go func() {
|
go func() {
|
||||||
_, err := w.Write([]byte("metric value=1\nmetric2 value=1\n"))
|
_, err := w.Write([]byte("metric value=1\nmetric2 value=1\n"))
|
||||||
require.NoError(t, err)
|
ch <- err
|
||||||
|
close(ch)
|
||||||
}()
|
}()
|
||||||
|
|
||||||
_, err := parser.Next()
|
_, err := parser.Next()
|
||||||
|
|
@ -984,6 +986,9 @@ func TestStreamParserProducesAllAvailableMetrics(t *testing.T) {
|
||||||
// should not block on second read
|
// should not block on second read
|
||||||
_, err = parser.Next()
|
_, err = parser.Next()
|
||||||
require.NoError(t, err)
|
require.NoError(t, err)
|
||||||
|
|
||||||
|
err = <-ch
|
||||||
|
require.NoError(t, err)
|
||||||
}
|
}
|
||||||
|
|
||||||
const benchmarkData = `benchmark,tags_host=myhost,tags_platform=python,tags_sdkver=3.11.5 value=5 1653643421
|
const benchmarkData = `benchmark,tags_host=myhost,tags_platform=python,tags_sdkver=3.11.5 value=5 1653643421
|
||||||
|
|
|
||||||
|
|
@ -15,6 +15,12 @@ import (
|
||||||
"github.com/influxdata/telegraf/testutil"
|
"github.com/influxdata/telegraf/testutil"
|
||||||
)
|
)
|
||||||
|
|
||||||
|
type item struct {
|
||||||
|
entry nameMap
|
||||||
|
age time.Duration
|
||||||
|
err error
|
||||||
|
}
|
||||||
|
|
||||||
func TestTableIntegration(t *testing.T) {
|
func TestTableIntegration(t *testing.T) {
|
||||||
if testing.Short() {
|
if testing.Short() {
|
||||||
t.Skip("Skipping integration test in short mode")
|
t.Skip("Skipping integration test in short mode")
|
||||||
|
|
@ -119,20 +125,26 @@ func TestGetMap(t *testing.T) {
|
||||||
// Remote call should happen the first time getMap runs
|
// Remote call should happen the first time getMap runs
|
||||||
require.Equal(t, int32(1), remoteCalls)
|
require.Equal(t, int32(1), remoteCalls)
|
||||||
|
|
||||||
var wg sync.WaitGroup
|
|
||||||
const thMax = 3
|
const thMax = 3
|
||||||
|
ch := make(chan item, thMax)
|
||||||
|
var wg sync.WaitGroup
|
||||||
for th := 0; th < thMax; th++ {
|
for th := 0; th < thMax; th++ {
|
||||||
wg.Add(1)
|
wg.Add(1)
|
||||||
go func() {
|
go func() {
|
||||||
defer wg.Done()
|
defer wg.Done()
|
||||||
m, age, err := d.getMap("agent")
|
m, age, err := d.getMap("agent")
|
||||||
require.NoError(t, err)
|
ch <- item{entry: m, age: age, err: err}
|
||||||
require.NotZero(t, age) // Age is nonzero when map comes from cache
|
|
||||||
require.Equal(t, expected, m)
|
|
||||||
}()
|
}()
|
||||||
}
|
}
|
||||||
|
|
||||||
wg.Wait()
|
wg.Wait()
|
||||||
|
close(ch)
|
||||||
|
|
||||||
|
for entry := range ch {
|
||||||
|
require.NoError(t, entry.err)
|
||||||
|
require.NotZero(t, entry.age) // Age is nonzero when map comes from cache
|
||||||
|
require.Equal(t, expected, entry.entry)
|
||||||
|
}
|
||||||
|
|
||||||
// Remote call should not happen subsequent times getMap runs
|
// Remote call should not happen subsequent times getMap runs
|
||||||
require.Equal(t, int32(1), remoteCalls)
|
require.Equal(t, int32(1), remoteCalls)
|
||||||
|
|
|
||||||
|
|
@ -46,25 +46,24 @@ func TestParallelReverseDNSLookup(t *testing.T) {
|
||||||
defer d.Stop()
|
defer d.Stop()
|
||||||
|
|
||||||
d.Resolver = &localResolver{}
|
d.Resolver = &localResolver{}
|
||||||
var answer1 []string
|
var answer1, answer2 []string
|
||||||
var answer2 []string
|
var err1, err2 error
|
||||||
wg := &sync.WaitGroup{}
|
wg := &sync.WaitGroup{}
|
||||||
wg.Add(2)
|
wg.Add(2)
|
||||||
go func() {
|
go func() {
|
||||||
answer, err := d.Lookup("127.0.0.1")
|
answer1, err1 = d.Lookup("127.0.0.1")
|
||||||
require.NoError(t, err)
|
|
||||||
answer1 = answer
|
|
||||||
wg.Done()
|
wg.Done()
|
||||||
}()
|
}()
|
||||||
go func() {
|
go func() {
|
||||||
answer, err := d.Lookup("127.0.0.1")
|
answer2, err2 = d.Lookup("127.0.0.1")
|
||||||
require.NoError(t, err)
|
|
||||||
answer2 = answer
|
|
||||||
wg.Done()
|
wg.Done()
|
||||||
}()
|
}()
|
||||||
|
|
||||||
wg.Wait()
|
wg.Wait()
|
||||||
|
|
||||||
|
require.NoError(t, err1)
|
||||||
|
require.NoError(t, err2)
|
||||||
|
|
||||||
t.Log(answer1)
|
t.Log(answer1)
|
||||||
t.Log(answer2)
|
t.Log(answer2)
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue