cloudflare/pint

Public

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

CodeCommitsIssuesPull requestsActionsInsightsSecurity
v0.84.0

Branches

Tags

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

Clone

HTTPS

Download ZIP

internal/diags/problems_test.snap

332lines · 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(http_requests_total{job="api",status=~"5.."}[5m])) / sum by (instance) (rate(up{job="api"}[5m])) > 0.01
128 ^^
129 check this
130
131---
132
133[TestInjectDiagnostics/short_expression_range_on_long_line_skips_AST_trimming - 1]
134aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa: sum(foo) by(bar)
135
1361 | aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa: sum(foo) by(bar)
137 ^
138 bad
139
140---
141
142[TestInjectDiagnostics/AST_trimming_with_multi-line_positions_skips_other_lines - 1]
143sum by (instance) (rate(http_requests_total{job="api",status=~"5.."}[5m])) / sum by (instance) (rate(up{job="api"}[5m])) > 0.01
144
1451 | sum by (instance) (rate(http_requests_total{job="api",status=~"5.."}[5m])) / sum by (instance) (rate(up{job="api"}[5m])) > 0.01
146 ^^
147 dead code
148
149---
150
151[TestInjectDiagnostics/empty_message_diagnostic_produces_no_message_line - 1]
152expr: foo(bar) by()
153
1541 | expr: foo(bar) by()
155 ^^^^^^^^^^^^^
156
157---
158
159[TestInjectDiagnostics/non-consecutive_lines_produce_gap_marker - 1]
160line1: foo
161line2: bar
162line3: baz
163
164
1651 | line1: foo
166 ^ err1
167 | [...]
1683 | line3: baz
169 err3
170
171---
172
173[TestInjectDiagnostics/non-overlapping_subexpression_is_replaced_with_ellipsis - 1]
174
175expr: sum by (instance) (rate(http_requests_total{job="api",status=~"5.."}[5m])) / sum by (instance) (rate(up{job="api"}[5m])) > 0.01
176
1772 | expr: ... / sum by (instance) (rate(up{job="api"}[5m])) > 0.01
178 ^^ dead code
179
180---
181
182[TestInjectDiagnostics/large_vector_selector_inside_sum_is_replaced - 1]
183
184expr: sum(oooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo) by(x)
185
1862 | expr: sum(...) by(x)
187 ^^^^^ by(x) issue
188
189---
190
191[TestInjectDiagnostics/invalid_PromQL_skips_trimming_and_keeps_full_line - 1]
192
193expr: sum(rate(http_requests_total{job="api",status=~"5.."}[5m]) / sum(rate(up{job="api"}[5m])) > 0.01
194
1952 | expr: sum(rate(http_requests_total{job="api",status=~"5.."}[5m]) / sum(rate(up{job="api"}[5m])) > 0.01
196 ^^^^^^
197 syntax error
198
199---
200
201[TestInjectDiagnostics/invalid_PromQL_with_far_right_caret_places_message_on_left - 1]
202
203expr: sum(rate(http_requests_total{job="api",status=~"5.."}[5m])) / sum(rate(up{job="api"}[5m]))) > 0.01
204
2052 | expr: sum(rate(http_requests_total{job="api",status=~"5.."}[5m])) / sum(rate(up{job="api"}[5m]))) > 0.01
206 ^
207 syntax error
208
209---
210
211[TestInjectDiagnostics/replacement_after_diagnostic_does_not_shift_caret - 1]
212
213expr: sum(foo) + sum(rate(very_long_metric_name_aaaa{job="api",status=~"5..",instance=~".*"}[5m])) > 0
214
2152 | expr: sum(foo) + ... > 0
216 ^^^^^^^^ bad sum
217
218---
219
220[TestInjectDiagnostics/far_right_caret_places_short_message_on_left - 1]
221
222expr: sum(foo) without(colo_id, instance, node_type, region, node_status, job, colo_name)
223
2242 | expr: sum(foo) without(colo_id, instance, node_type, region, node_status, job, colo_name)
225 ^^^^^^^^^
226 bad label
227
228---
229
230[TestInjectDiagnostics/far_right_caret_wraps_long_message_on_left - 1]
231
232expr: sum(foo) without(colo_id, instance, node_type, region, node_status, job, colo_name)
233
2342 | expr: sum(foo) without(colo_id, instance, node_type, region, node_status, job, colo_name)
235 ^^^^^^^^^
236 Using `without(colo_id, instance, node_type, region, node_status, job, colo_name)`
237 removes all these labels from the results.
238
239---
240
241[TestInjectDiagnostics/multi-line_expression_skips_AST_trimming - 1]
242
243expr: |
244 sum(rate(very_long_metric_name_that_pushes_past_the_width_limit_aaaa{job="api",status=~"5.."}[5m])) by(instance)
245 + sum(rate(another_very_long_metric_name_that_pushes_past_the_width_limit{job="api"}[5m]))
246
2473 | sum(rate(very_long_metric_name_that_pushes_past_the_width_limit_aaaa{job="api",status=~"5.."}[5m])) by(instance)
248 ^^^^^^ bad rate
2494 | + sum(rate(another_very_long_metric_name_that_pushes_past_the_width_limit{job="api"}[5m]))
250
251---
252
253[TestInjectDiagnostics/diagnostic_covers_entire_expression_so_no_nodes_are_replaced - 1]
254
255expr: sum(rate(very_long_metric_name_that_pushes_past_the_width_limit_aaaa{job="api",status=~"5.."}[5m])) by(instance)
256
2572 | expr: sum(rate(very_long_metric_name_that_pushes_past_the_width_limit_aaaa{job="api",status=~"5.."}[5m])) by(instance)
258 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
259 bad query
260
261---
262
263[TestInjectDiagnostics/right_side_message_wraps_at_line_width_limit - 1]
264
265expr: sum(foo) without(colo_id, instance, node_type, region, node_status, job, colo_name)
266
2672 | expr: sum(foo) without(colo_id, instance, node_type, region, node_status, job, colo_name)
268 ^^^^^^^
269 Query is using aggregation with `without(colo_id, instance, node_type, region,
270 node_status, job, colo_name)`, all labels included inside `without(...)` will be
271 removed from the results. `job` label is required and should be preserved when
272 aggregating all rules.
273
274---
275
276[TestInjectDiagnostics/multi-line_expression_trims_long_inner_line - 1]
277
278expr: >-
279 sum by (exporter, colo_name) (rate(otelcol_exporter_send_failed_log_records{node_status="v", exporter=~"(failover|otlp)/.*"}[5m]))
280 /
281 (
282 sum by (exporter, colo_name) (rate(otelcol_exporter_send_failed_log_records{exporter=~"(failover|otlp)/.*"}[5m])) + sum by (exporter, colo_name) (rate(otelcol_exporter_sent_log_records{exporter=~"(failover|otlp)/.*"}[5m]))
283 )
284 > 0.1
285 and
286 sum by (exporter, colo_name) (rate(otelcol_exporter_send_failed_log_records{node_status="v", exporter=~"(failover|otlp)/.*"}[5m])) > 10
287
288 3 | sum by (exporter, colo_name) (...)
289 4 | /
290 5 | (
291 6 | ... + sum by (exporter, colo_name) (rate(otelcol_exporter_sent_log_records{exporter=~"(failover|otlp)/.*"}[5m]))
292 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
293 smelly regexp selector
294 7 | )
295 8 | > 0.1
296 9 | and
29710 | ... > 10
298
299---
300
301[TestInjectDiagnostics/multi-line_expression_trims_individual_long_lines - 1]
302
303expr: |
304 sum(rate(very_long_metric_name_that_pushes_past_the_width_limit_aaaa{job="api",status=~"5.."}[5m])) by(instance)
305 + sum(rate(another_very_long_metric_name_that_pushes_past_the_width_limit{job="api"}[5m]))
306
3073 | sum(...) by(instance)
308 ^^^ bad rate
3094 | + sum(rate(another_very_long_metric_name_that_pushes_past_the_width_limit{job="api"}[5m]))
310
311---
312
313[TestInjectDiagnostics/indented_multi-line_gap_uses_aligned_ellipsis_marker - 1]
314 line1
315 line2
316 line3
317 line4
318 line5
319 line6
320 line7
321 line8
322 line9
323 line10
324
325 1 | line1
326 ^^^^^ problem here
327 2 | line2
328 3 | line3
329 | [...]
33010 | line10
331
332---
333