From cc23e3760df2abfaedf9506bfa01d89d47634cf6 Mon Sep 17 00:00:00 2001 From: Andrew Hall Date: Tue, 11 Nov 2025 17:03:35 +0800 Subject: [PATCH] Allow for promql tests to compare expected fail message during query preparation Signed-off-by: Andrew Hall --- promql/promqltest/test.go | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/promql/promqltest/test.go b/promql/promqltest/test.go index 41d8cdde20..b16433c14e 100644 --- a/promql/promqltest/test.go +++ b/promql/promqltest/test.go @@ -1430,6 +1430,11 @@ func (t *test) execEval(cmd *evalCmd, engine promql.QueryEngine) error { func (t *test) execRangeEval(cmd *evalCmd, engine promql.QueryEngine) error { q, err := engine.NewRangeQuery(t.context, t.storage, nil, cmd.expr, cmd.start, cmd.end, cmd.step) if err != nil { + if cmd.isFail() { + if err := cmd.checkExpectedFailure(err); err == nil { + return nil + } + } return fmt.Errorf("error creating range query for %q (line %d): %w", cmd.expr, cmd.line, err) } defer q.Close() @@ -1473,6 +1478,11 @@ func (t *test) execInstantEval(cmd *evalCmd, engine promql.QueryEngine) error { func (t *test) runInstantQuery(iq atModifierTestCase, cmd *evalCmd, engine promql.QueryEngine) error { q, err := engine.NewInstantQuery(t.context, t.storage, nil, iq.expr, iq.evalTime) if err != nil { + if cmd.isFail() { + if err := cmd.checkExpectedFailure(err); err == nil { + return nil + } + } return fmt.Errorf("error creating instant query for %q (line %d): %w", cmd.expr, cmd.line, err) } defer q.Close()