Skip to content

Commit 18fdf16

Browse files
committed
Add weight test
1 parent a114967 commit 18fdf16

File tree

1 file changed

+66
-0
lines changed

1 file changed

+66
-0
lines changed
Lines changed: 66 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,66 @@
1+
package weights
2+
3+
import (
4+
"testing"
5+
6+
"github.com/grafana/tempo/pkg/traceql"
7+
)
8+
9+
func TestFetchSpans(t *testing.T) {
10+
cases := []struct {
11+
req *traceql.FetchSpansRequest
12+
expected int
13+
}{
14+
{
15+
req: nil,
16+
expected: 1,
17+
},
18+
{
19+
req: &traceql.FetchSpansRequest{},
20+
expected: 2,
21+
},
22+
{
23+
req: &traceql.FetchSpansRequest{
24+
AllConditions: true,
25+
Conditions: []traceql.Condition{
26+
{Attribute: traceql.NewIntrinsic(traceql.IntrinsicTraceRootService), Op: traceql.OpEqual, Operands: []traceql.Static{traceql.NewStaticString("foo")}},
27+
{Attribute: traceql.NewIntrinsic(traceql.IntrinsicTraceRootService), Op: traceql.OpEqual, Operands: []traceql.Static{traceql.NewStaticString("foo")}},
28+
},
29+
},
30+
expected: 1,
31+
},
32+
{
33+
req: &traceql.FetchSpansRequest{
34+
AllConditions: true,
35+
Conditions: []traceql.Condition{
36+
{Attribute: traceql.NewIntrinsic(traceql.IntrinsicTraceRootService), Op: traceql.OpEqual, Operands: []traceql.Static{traceql.NewStaticString("foo")}},
37+
{Attribute: traceql.NewIntrinsic(traceql.IntrinsicTraceRootService), Op: traceql.OpEqual, Operands: []traceql.Static{traceql.NewStaticString("foo")}},
38+
{Attribute: traceql.NewIntrinsic(traceql.IntrinsicTraceRootService), Op: traceql.OpEqual, Operands: []traceql.Static{traceql.NewStaticString("foo")}},
39+
{Attribute: traceql.NewIntrinsic(traceql.IntrinsicTraceRootService), Op: traceql.OpEqual, Operands: []traceql.Static{traceql.NewStaticString("foo")}},
40+
{Attribute: traceql.NewIntrinsic(traceql.IntrinsicTraceRootService), Op: traceql.OpEqual, Operands: []traceql.Static{traceql.NewStaticString("foo")}},
41+
},
42+
},
43+
expected: 2,
44+
},
45+
{
46+
req: &traceql.FetchSpansRequest{
47+
AllConditions: true,
48+
Conditions: []traceql.Condition{
49+
{Attribute: traceql.NewIntrinsic(traceql.IntrinsicTraceRootService), Op: traceql.OpEqual, Operands: []traceql.Static{traceql.NewStaticString("foo")}},
50+
{Attribute: traceql.NewIntrinsic(traceql.IntrinsicTraceRootService), Op: traceql.OpEqual, Operands: []traceql.Static{traceql.NewStaticString("foo")}},
51+
{Attribute: traceql.NewIntrinsic(traceql.IntrinsicTraceRootService), Op: traceql.OpEqual, Operands: []traceql.Static{traceql.NewStaticString("foo")}},
52+
{Attribute: traceql.NewIntrinsic(traceql.IntrinsicTraceRootService), Op: traceql.OpEqual, Operands: []traceql.Static{traceql.NewStaticString("foo")}},
53+
{Attribute: traceql.NewIntrinsic(traceql.IntrinsicTraceRootService), Op: traceql.OpRegex, Operands: []traceql.Static{traceql.NewStaticString("foo")}},
54+
},
55+
},
56+
expected: 3,
57+
},
58+
}
59+
60+
for _, c := range cases {
61+
actual := FetchSpans(c.req)
62+
if actual != c.expected {
63+
t.Errorf("expected %d, got %d", c.expected, actual)
64+
}
65+
}
66+
}

0 commit comments

Comments
 (0)