MCPcopy
hub / github.com/grafana/tempo / TestGroup

Function TestGroup

pkg/traceql/ast_execute_test.go:188–250  ·  view source on GitHub ↗
(t *testing.T)

Source from the content-addressed store, hash-verified

186}
187
188func TestGroup(t *testing.T) {
189 testCases := []evalTC{
190 {
191 "{ } | by(.foo)",
192 []*Spanset{
193 {Spans: []Span{
194 &mockSpan{id: []byte{1}, attributes: map[Attribute]Static{NewAttribute("foo"): NewStaticString("a")}},
195 &mockSpan{id: []byte{2}, attributes: map[Attribute]Static{NewAttribute("foo"): NewStaticString("b")}},
196 &mockSpan{id: []byte{3}, attributes: map[Attribute]Static{NewAttribute("foo"): NewStaticString("b")}},
197 }},
198 },
199 []*Spanset{
200 {
201 Spans: []Span{
202 &mockSpan{id: []byte{1}, attributes: map[Attribute]Static{NewAttribute("foo"): NewStaticString("a")}},
203 },
204 Attributes: []*SpansetAttribute{{Name: "by(.foo)", Val: NewStaticString("a")}},
205 },
206 {
207 Spans: []Span{
208 &mockSpan{id: []byte{2}, attributes: map[Attribute]Static{NewAttribute("foo"): NewStaticString("b")}},
209 &mockSpan{id: []byte{3}, attributes: map[Attribute]Static{NewAttribute("foo"): NewStaticString("b")}},
210 },
211 Attributes: []*SpansetAttribute{{Name: "by(.foo)", Val: NewStaticString("b")}},
212 },
213 },
214 },
215 {
216 "{ } | by(.foo) | by(.bar)",
217 []*Spanset{
218 {Spans: []Span{
219 &mockSpan{id: []byte{1}, attributes: map[Attribute]Static{NewAttribute("foo"): NewStaticString("a"), NewAttribute("bar"): NewStaticString("1")}},
220 &mockSpan{id: []byte{2}, attributes: map[Attribute]Static{NewAttribute("foo"): NewStaticString("b"), NewAttribute("bar"): NewStaticString("1")}},
221 &mockSpan{id: []byte{3}, attributes: map[Attribute]Static{NewAttribute("foo"): NewStaticString("b"), NewAttribute("bar"): NewStaticString("2")}},
222 }},
223 },
224 []*Spanset{
225 {
226 Spans: []Span{
227 &mockSpan{id: []byte{1}, attributes: map[Attribute]Static{NewAttribute("foo"): NewStaticString("a"), NewAttribute("bar"): NewStaticString("1")}},
228 },
229 Attributes: []*SpansetAttribute{{Name: "by(.foo)", Val: NewStaticString("a")}, {Name: "by(.bar)", Val: NewStaticString("1")}},
230 },
231 {
232 Spans: []Span{
233 &mockSpan{id: []byte{2}, attributes: map[Attribute]Static{NewAttribute("foo"): NewStaticString("b"), NewAttribute("bar"): NewStaticString("1")}},
234 },
235 Attributes: []*SpansetAttribute{{Name: "by(.foo)", Val: NewStaticString("b")}, {Name: "by(.bar)", Val: NewStaticString("1")}},
236 },
237 {
238 Spans: []Span{
239 &mockSpan{id: []byte{3}, attributes: map[Attribute]Static{NewAttribute("foo"): NewStaticString("b"), NewAttribute("bar"): NewStaticString("2")}},
240 },
241 Attributes: []*SpansetAttribute{{Name: "by(.foo)", Val: NewStaticString("b")}, {Name: "by(.bar)", Val: NewStaticString("2")}},
242 },
243 },
244 },
245 }

Callers

nothing calls this directly

Calls 3

NewAttributeFunction · 0.85
NewStaticStringFunction · 0.85
testEvaluatorFunction · 0.85

Tested by

no test coverage detected