cloudflare/pint

Public

mirrored from https://github.com/cloudflare/pintAvailable

CodeCommitsIssuesPull requestsActionsInsightsSecurity
v0.83.0

Branches

Tags

  • No tags available.
0Branches0Tags
Go to file
Add file
Code

Clone

HTTPS

Download ZIP

internal/diags/problems_test.snap

271lines · modecode

1
2[TestInjectDiagnostics/single_diagnostic_on_one_line - 1]
3expr: foo(bar) by()
4
51 | expr: foo(bar) by()
6 ^^^^^^^^^^^^^ this is bad
7
8---
9
10[TestInjectDiagnostics/caret_in_the_middle_of_a_line - 1]
11expr: foo(bar) on()
12
131 | expr: foo(bar) on()
14 ^^ oops
15
16---
17
18[TestInjectDiagnostics/two_diagnostics_on_different_columns - 1]
19
20expr: sum(foo{job="bar"})
21 / on(a,b)
22 sum(foo)
23
24
252 | expr: sum(foo{job="bar"})
263 | / on(a,b)
27 ^^^ efg
28 ^^^^^^^ abc
294 | sum(foo)
30
31---
32
33[TestInjectDiagnostics/YAML_literal_block_scalar - 1]
34
35expr: |
36 sum(bar{job="foo"})
37 / on(c,d)
38 sum(bar)
39
40
413 | sum(bar{job="foo"})
424 | / on(c,d)
43 ^^ 123
445 | sum(bar)
45 ^^^ 456
46
47---
48
49[TestInjectDiagnostics/two_diagnostics_on_same_columns - 1]
50
51expr:
52 sum(bar{job="foo"})
53 / on(c,d)
54 sum(bar)
55
56
573 | sum(bar{job="foo"})
584 | / on(c,d)
59 ^^^^^^^ abc
60 efg
615 | sum(bar)
62
63---
64
65[TestInjectDiagnostics/YAML_folded_block_scalar_with_surrounding_lines - 1]
66
67### BEGIN ###
68expr: >-
69 sum(bar{job="foo"})
70 / on(c,d)
71 sum(bar)
72### END ###
73
74
754 | sum(bar{job="foo"})
765 | / on(c,d)
77 ^^^^^^^ abc
78 efg
796 | sum(bar)
80
81---
82
83[TestInjectDiagnostics/single_column_caret - 1]
84expr: cnt(bar) by()
85
861 | expr: cnt(bar) by()
87 ^ this is bad
88
89---
90
91[TestInjectDiagnostics/multi-line_expression_with_caret_on_last_line - 1]
92
93expr: |
94 foo{
95 job="bar"
96 }
97
98
993 | foo{
1004 | job="bar"
1015 | }
102 ^ this is bad
103
104---
105
106[TestInjectDiagnostics/issue_and_context_diagnostics_on_same_column - 1]
107expr: foo(bar) by()
108
1091 | expr: foo(bar) by()
110 ^^^^^^^^^^^^^ this is bad
111 this is context
112
113---
114
115[TestInjectDiagnostics/rightmost_caret_is_printed_first - 1]
116expr: foo(bar) by()
117
1181 | expr: foo(bar) by()
119 ^^^^ this is context
120 ^^^^^^^^^^^^^ this is bad
121
122---
123
124[TestInjectDiagnostics/multiple_position_ranges_on_same_line_compute_min_and_max_columns - 1]
125sum by (instance) (rate(http_requests_total{job="api",status=~"5.."}[5m])) / sum by (instance) (rate(up{job="api"}[5m])) > 0.01
126
1271 | ... / sum by (instance) (rate(up{job="api"}[5m])) > 0.01
128 ^^^^ check this
129
130---
131
132[TestInjectDiagnostics/short_expression_range_on_long_line_skips_AST_trimming - 1]
133aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa: sum(foo) by(bar)
134
1351 | aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa: sum(foo) by(bar)
136 ^
137 bad
138
139---
140
141[TestInjectDiagnostics/AST_trimming_with_multi-line_positions_skips_other_lines - 1]
142sum by (instance) (rate(http_requests_total{job="api",status=~"5.."}[5m])) / sum by (instance) (rate(up{job="api"}[5m])) > 0.01
143
1441 | ... / sum by (instance) (rate(...)) > 0.01
145 ^^^^ dead code
146
147---
148
149[TestInjectDiagnostics/empty_message_diagnostic_produces_no_message_line - 1]
150expr: foo(bar) by()
151
1521 | expr: foo(bar) by()
153 ^^^^^^^^^^^^^
154
155---
156
157[TestInjectDiagnostics/non-consecutive_lines_produce_gap_marker - 1]
158line1: foo
159line2: bar
160line3: baz
161
162
1631 | line1: foo
164 ^ err1
165 | [...]
1663 | line3: baz
167 err3
168
169---
170
171[TestInjectDiagnostics/non-overlapping_subexpression_is_replaced_with_ellipsis - 1]
172
173expr: sum by (instance) (rate(http_requests_total{job="api",status=~"5.."}[5m])) / sum by (instance) (rate(up{job="api"}[5m])) > 0.01
174
1752 | expr: ... / sum by (instance) (rate(up{job="api"}[5m])) > 0.01
176 ^^^^ dead code
177
178---
179
180[TestInjectDiagnostics/large_vector_selector_inside_sum_is_replaced - 1]
181
182expr: sum(oooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo) by(x)
183
1842 | expr: sum(...) by(x)
185 ^^^^^ by(x) issue
186
187---
188
189[TestInjectDiagnostics/invalid_PromQL_skips_trimming_and_keeps_full_line - 1]
190
191expr: sum(rate(http_requests_total{job="api",status=~"5.."}[5m]) / sum(rate(up{job="api"}[5m])) > 0.01
192
1932 | expr: sum(rate(http_requests_total{job="api",status=~"5.."}[5m]) / sum(rate(up{job="api"}[5m])) > 0.01
194 ^^^ syntax error
195
196---
197
198[TestInjectDiagnostics/invalid_PromQL_with_far_right_caret_places_message_on_left - 1]
199
200expr: sum(rate(http_requests_total{job="api",status=~"5.."}[5m])) / sum(rate(up{job="api"}[5m]))) > 0.01
201
2022 | expr: sum(rate(http_requests_total{job="api",status=~"5.."}[5m])) / sum(rate(up{job="api"}[5m]))) > 0.01
203 ^
204 syntax error
205
206---
207
208[TestInjectDiagnostics/replacement_after_diagnostic_does_not_shift_caret - 1]
209
210expr: sum(foo) + sum(rate(very_long_metric_name_aaaa{job="api",status=~"5..",instance=~".*"}[5m])) > 0
211
2122 | expr: sum(foo) + ... > 0
213 ^^^^^^^^ bad sum
214
215---
216
217[TestInjectDiagnostics/far_right_caret_places_short_message_on_left - 1]
218
219expr: sum(foo) without(colo_id, instance, node_type, region, node_status, job, colo_name)
220
2212 | expr: sum(foo) without(colo_id, instance, node_type, region, node_status, job, colo_name)
222 ^^^^
223 bad label
224
225---
226
227[TestInjectDiagnostics/far_right_caret_wraps_long_message_on_left - 1]
228
229expr: sum(foo) without(colo_id, instance, node_type, region, node_status, job, colo_name)
230
2312 | expr: sum(foo) without(colo_id, instance, node_type, region, node_status, job, colo_name)
232 ^^^^
233 Using `without(colo_id, instance, node_type, region, node_status, job, colo_name)`
234 removes all these labels from the results.
235
236---
237
238[TestInjectDiagnostics/multi-line_expression_skips_AST_trimming - 1]
239
240expr: |
241 sum(rate(very_long_metric_name_that_pushes_past_the_width_limit_aaaa{job="api",status=~"5.."}[5m])) by(instance)
242 + sum(rate(another_very_long_metric_name_that_pushes_past_the_width_limit{job="api"}[5m]))
243
2443 | sum(rate(very_long_metric_name_that_pushes_past_the_width_limit_aaaa{job="api",status=~"5.."}[5m])) by(instance)
245 ^^^^^^ bad rate
2464 | + sum(rate(another_very_long_metric_name_that_pushes_past_the_width_limit{job="api"}[5m]))
247
248---
249
250[TestInjectDiagnostics/diagnostic_covers_entire_expression_so_no_nodes_are_replaced - 1]
251
252expr: sum(rate(very_long_metric_name_that_pushes_past_the_width_limit_aaaa{job="api",status=~"5.."}[5m])) by(instance)
253
2542 | expr: sum(rate(very_long_metric_name_that_pushes_past_the_width_limit_aaaa{job="api",status=~"5.."}[5m])) by(instance)
255 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
256 bad query
257
258---
259
260[TestInjectDiagnostics/right_side_message_wraps_at_line_width_limit - 1]
261
262expr: sum(foo) without(colo_id, instance, node_type, region, node_status, job, colo_name)
263
2642 | expr: sum(foo) without(colo_id, instance, node_type, region, node_status, job, colo_name)
265 ^^^^
266 Query is using aggregation with `without(colo_id, instance, node_type,
267 region, node_status, job, colo_name)`, all labels included inside
268 `without(...)` will be removed from the results. `job` label is required and
269 should be preserved when aggregating all rules.
270
271---
272