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
133
plugins/inputs/zipkin/handler_test.go
Normal file
133
plugins/inputs/zipkin/handler_test.go
Normal file
|
@ -0,0 +1,133 @@
|
|||
package zipkin
|
||||
|
||||
import (
|
||||
"bytes"
|
||||
"io"
|
||||
"net/http"
|
||||
"net/http/httptest"
|
||||
"os"
|
||||
"strconv"
|
||||
"testing"
|
||||
"time"
|
||||
|
||||
"github.com/stretchr/testify/require"
|
||||
|
||||
"github.com/influxdata/telegraf/plugins/inputs/zipkin/trace"
|
||||
)
|
||||
|
||||
type mockRecorder struct {
|
||||
data trace.Trace
|
||||
err error
|
||||
}
|
||||
|
||||
func (m *mockRecorder) record(t trace.Trace) error {
|
||||
m.data = t
|
||||
return nil
|
||||
}
|
||||
|
||||
func (m *mockRecorder) error(err error) {
|
||||
m.err = err
|
||||
}
|
||||
|
||||
func TestSpanHandler(t *testing.T) {
|
||||
dat, err := os.ReadFile("testdata/threespans.dat")
|
||||
if err != nil {
|
||||
t.Fatalf("Could not find file %s\n", "testdata/threespans.dat")
|
||||
}
|
||||
|
||||
w := httptest.NewRecorder()
|
||||
r := httptest.NewRequest(
|
||||
"POST",
|
||||
"http://server.local/api/v1/spans",
|
||||
io.NopCloser(
|
||||
bytes.NewReader(dat)))
|
||||
|
||||
r.Header.Set("Content-Type", "application/x-thrift")
|
||||
handler := newSpanHandler("/api/v1/spans")
|
||||
mockRecorder := &mockRecorder{}
|
||||
handler.recorder = mockRecorder
|
||||
|
||||
handler.spans(w, r)
|
||||
require.Equal(t, http.StatusNoContent, w.Code)
|
||||
|
||||
got := mockRecorder.data
|
||||
|
||||
parentID := strconv.FormatInt(22964302721410078, 16)
|
||||
want := trace.Trace{
|
||||
{
|
||||
Name: "Child",
|
||||
ID: "7047c59776af8a1b",
|
||||
TraceID: "22c4fc8ab3669045",
|
||||
ParentID: parentID,
|
||||
Timestamp: time.Unix(0, 1498688360851331*int64(time.Microsecond)).UTC(),
|
||||
Duration: time.Duration(53106) * time.Microsecond,
|
||||
ServiceName: "trivial",
|
||||
Annotations: make([]trace.Annotation, 0),
|
||||
BinaryAnnotations: []trace.BinaryAnnotation{
|
||||
{
|
||||
Key: "lc",
|
||||
Value: "trivial",
|
||||
Host: "127.0.0.1",
|
||||
ServiceName: "trivial",
|
||||
},
|
||||
},
|
||||
},
|
||||
{
|
||||
Name: "Child",
|
||||
ID: "17020eb55a8bfe5",
|
||||
TraceID: "22c4fc8ab3669045",
|
||||
ParentID: parentID,
|
||||
Timestamp: time.Unix(0, 1498688360904552*int64(time.Microsecond)).UTC(),
|
||||
Duration: time.Duration(50410) * time.Microsecond,
|
||||
ServiceName: "trivial",
|
||||
Annotations: make([]trace.Annotation, 0),
|
||||
BinaryAnnotations: []trace.BinaryAnnotation{
|
||||
{
|
||||
Key: "lc",
|
||||
Value: "trivial",
|
||||
Host: "127.0.0.1",
|
||||
ServiceName: "trivial",
|
||||
},
|
||||
},
|
||||
},
|
||||
{
|
||||
Name: "Parent",
|
||||
ID: "5195e96239641e",
|
||||
TraceID: "22c4fc8ab3669045",
|
||||
ParentID: parentID,
|
||||
Timestamp: time.Unix(0, 1498688360851318*int64(time.Microsecond)).UTC(),
|
||||
Duration: time.Duration(103680) * time.Microsecond,
|
||||
ServiceName: "trivial",
|
||||
Annotations: []trace.Annotation{
|
||||
{
|
||||
Timestamp: time.Unix(0, 1498688360851325*int64(time.Microsecond)).UTC(),
|
||||
Value: "Starting child #0",
|
||||
Host: "127.0.0.1",
|
||||
ServiceName: "trivial",
|
||||
},
|
||||
{
|
||||
Timestamp: time.Unix(0, 1498688360904545*int64(time.Microsecond)).UTC(),
|
||||
Value: "Starting child #1",
|
||||
Host: "127.0.0.1",
|
||||
ServiceName: "trivial",
|
||||
},
|
||||
{
|
||||
Timestamp: time.Unix(0, 1498688360954992*int64(time.Microsecond)).UTC(),
|
||||
Value: "A Log",
|
||||
Host: "127.0.0.1",
|
||||
ServiceName: "trivial",
|
||||
},
|
||||
},
|
||||
BinaryAnnotations: []trace.BinaryAnnotation{
|
||||
{
|
||||
Key: "lc",
|
||||
Value: "trivial",
|
||||
Host: "127.0.0.1",
|
||||
ServiceName: "trivial",
|
||||
},
|
||||
},
|
||||
},
|
||||
}
|
||||
|
||||
require.Equal(t, want, got)
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue