Skip to content

Commit 41a12b1

Browse files
authored
Merge pull request #294 from Muscraft/line-start-zero
feat: Allow passing zero to line_start
2 parents b5152f6 + c8abf85 commit 41a12b1

File tree

2 files changed

+45
-4
lines changed

2 files changed

+45
-4
lines changed

src/renderer/mod.rs

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -985,10 +985,6 @@ impl Renderer {
985985
// | vertical divider between the column number and the code
986986
// column number
987987

988-
if line_info.line_index == 0 {
989-
return Vec::new();
990-
}
991-
992988
let source_string = normalize_whitespace(line_info.line);
993989

994990
let line_offset = buffer.num_lines();

tests/formatter.rs

Lines changed: 45 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4281,3 +4281,48 @@ warning: whatever
42814281
let renderer = renderer.decor_style(DecorStyle::Unicode);
42824282
assert_data_eq!(renderer.render(report), expected_unicode);
42834283
}
4284+
4285+
#[test]
4286+
fn alignment() {
4287+
let source = "SELECT bar";
4288+
4289+
let title = "ensure single line at line 0 rendered correctly with group line lined up";
4290+
4291+
let input = &[
4292+
Group::with_title(Level::ERROR.primary_title(title)).element(
4293+
Snippet::source(source)
4294+
.path("Cargo.toml")
4295+
.line_start(0)
4296+
.annotation(
4297+
AnnotationKind::Primary
4298+
.span(7..10)
4299+
.label("unexpected token"),
4300+
)
4301+
.annotation(
4302+
AnnotationKind::Visible
4303+
.span(0..10)
4304+
.label("while parsing statement"),
4305+
),
4306+
),
4307+
];
4308+
4309+
let expected_ascii = str![[r#"
4310+
error: ensure single line at line 0 rendered correctly with group line lined up
4311+
--> Cargo.toml:0:8
4312+
|
4313+
0 | SELECT bar
4314+
| ^^^ unexpected token
4315+
"#]];
4316+
let renderer = Renderer::plain();
4317+
assert_data_eq!(renderer.render(input), expected_ascii);
4318+
4319+
let expected_unicode = str![[r#"
4320+
error: ensure single line at line 0 rendered correctly with group line lined up
4321+
╭▸ Cargo.toml:0:8
4322+
4323+
0 │ SELECT bar
4324+
╰╴ ━━━ unexpected token
4325+
"#]];
4326+
let renderer = renderer.decor_style(DecorStyle::Unicode);
4327+
assert_data_eq!(renderer.render(input), expected_unicode);
4328+
}

0 commit comments

Comments
 (0)