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

Function TestPipelineSpansetOperators

pkg/traceql/parse_test.go:113–354  ·  view source on GitHub ↗
(t *testing.T)

Source from the content-addressed store, hash-verified

111}
112
113func TestPipelineSpansetOperators(t *testing.T) {
114 tests := []struct {
115 in string
116 expected SpansetOperation
117 expectedStr string
118 }{
119 {
120 in: "({ .a } | { .b }) > ({ .a } | { .b })",
121 expected: newSpansetOperation(OpSpansetChild,
122 newPipeline(
123 newSpansetFilter(NewAttribute("a")),
124 newSpansetFilter(NewAttribute("b")),
125 ),
126 newPipeline(
127 newSpansetFilter(NewAttribute("a")),
128 newSpansetFilter(NewAttribute("b")),
129 ),
130 ),
131 expectedStr: "({ .a }|{ .b }) > ({ .a }|{ .b })",
132 },
133 {
134 in: "({ .a } | { .b }) < ({ .a } | { .b })",
135 expected: newSpansetOperation(OpSpansetParent,
136 newPipeline(
137 newSpansetFilter(NewAttribute("a")),
138 newSpansetFilter(NewAttribute("b")),
139 ),
140 newPipeline(
141 newSpansetFilter(NewAttribute("a")),
142 newSpansetFilter(NewAttribute("b")),
143 ),
144 ),
145 expectedStr: "({ .a }|{ .b }) < ({ .a }|{ .b })",
146 },
147 {
148 in: "({ .a } | { .b }) ~ ({ .a } | { .b })",
149 expected: newSpansetOperation(OpSpansetSibling,
150 newPipeline(
151 newSpansetFilter(NewAttribute("a")),
152 newSpansetFilter(NewAttribute("b")),
153 ),
154 newPipeline(
155 newSpansetFilter(NewAttribute("a")),
156 newSpansetFilter(NewAttribute("b")),
157 ),
158 ),
159 expectedStr: "({ .a }|{ .b }) ~ ({ .a }|{ .b })",
160 },
161 {
162 in: "({ .a } | { .b }) && ({ .a } | { .b })",
163 expected: newSpansetOperation(OpSpansetAnd,
164 newPipeline(
165 newSpansetFilter(NewAttribute("a")),
166 newSpansetFilter(NewAttribute("b")),
167 ),
168 newPipeline(
169 newSpansetFilter(NewAttribute("a")),
170 newSpansetFilter(NewAttribute("b")),

Callers

nothing calls this directly

Calls 9

newSpansetOperationFunction · 0.85
newPipelineFunction · 0.85
newSpansetFilterFunction · 0.85
NewAttributeFunction · 0.85
ParseFunction · 0.85
newRootExprFunction · 0.85
RunMethod · 0.45
EqualMethod · 0.45
StringMethod · 0.45

Tested by

no test coverage detected