Start trying to write tests for promql

This commit is contained in:
Owen Williams 2023-12-08 12:46:26 -05:00
parent 21cf437e8b
commit fb03f9a388
2 changed files with 33 additions and 2 deletions

View file

@ -473,6 +473,23 @@ var testExpr = []struct {
StartPos: 1, StartPos: 1,
}, },
}, },
{
input: ` +{"some_metric"}`,
expected: &UnaryExpr{
Op: ADD,
Expr: &VectorSelector{
Name: "some_metric",
LabelMatchers: []*labels.Matcher{
MustLabelMatcher(labels.MatchEqual, model.MetricNameLabel, "some_metric"),
},
PosRange: posrange.PositionRange{
Start: 2,
End: 17,
},
},
StartPos: 1,
},
},
{ {
input: "", input: "",
fail: true, fail: true,
@ -1701,6 +1718,20 @@ var testExpr = []struct {
}, },
}, },
}, },
{
input: `{"foo", a="bc"}`,
expected: &VectorSelector{
Name: "foo:bar",
LabelMatchers: []*labels.Matcher{
MustLabelMatcher(labels.MatchEqual, model.MetricNameLabel, "foo"),
MustLabelMatcher(labels.MatchEqual, "a", "bc"),
},
PosRange: posrange.PositionRange{
Start: 0,
End: 15,
},
},
},
{ {
input: `foo{NaN='bc'}`, input: `foo{NaN='bc'}`,
expected: &VectorSelector{ expected: &VectorSelector{