Skip to content

Commit 1ed9c4a

Browse files
committed
test: Add tests for trimming without label
1 parent 293c847 commit 1ed9c4a

File tree

1 file changed

+72
-0
lines changed

1 file changed

+72
-0
lines changed

tests/formatter.rs

Lines changed: 72 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2980,6 +2980,30 @@ fn trim_unicode_annotate_ascii_end_with_label() {
29802980
assert_data_eq!(renderer.render(input), expected_unicode);
29812981
}
29822982

2983+
#[test]
2984+
fn trim_unicode_annotate_ascii_end_no_label() {
2985+
let source = "/*这是宽的。这是宽的。这是宽的。这是宽的。这是宽的。这是宽的。这是宽的。这是宽的。这是宽的。这是宽的。这是宽的。这是宽的。这是宽的。这是宽的。这是宽的。这是宽的。这是宽的。这是宽的。这是宽的。这是宽的。这是宽的。这是宽的。这是宽的。这是宽的。这是宽的。这是宽的。这是宽的。这是宽的。这是宽的。这是宽的。这是宽的。这是宽的。这是宽的。*/?";
2986+
let input = &[Group::with_level(Level::ERROR)
2987+
.element(Snippet::source(source).annotation(AnnotationKind::Primary.span(499..500)))];
2988+
2989+
let expected_ascii = str![[r#"
2990+
|
2991+
1 | ... 。这是宽的。这是宽的。这是宽的。这是宽的。这是宽的。这是宽的。*/
2992+
| ^
2993+
"#]];
2994+
2995+
let renderer = Renderer::plain();
2996+
assert_data_eq!(renderer.render(input), expected_ascii);
2997+
2998+
let expected_unicode = str![[r#"
2999+
╭▸
3000+
1 │ … 的。这是宽的。这是宽的。这是宽的。这是宽的。这是宽的。这是宽的。*/
3001+
╰╴ ━
3002+
"#]];
3003+
let renderer = renderer.decor_style(DecorStyle::Unicode);
3004+
assert_data_eq!(renderer.render(input), expected_unicode);
3005+
}
3006+
29833007
#[test]
29843008
fn trim_unicode_annotate_unicode_middle_with_label() {
29853009
let source = "/*这是宽的。这是宽的。这是宽的。这是宽的。这是宽的。这是宽的。这是宽的。这是宽的。这是宽的。这是宽的。这是宽的。这是宽的。这是宽的。这是宽的。这是宽的。这是宽的。这是宽的。这是宽的。这是宽的。这是宽的。这是宽的。这是宽的。这是宽的。这是宽的。这是宽的。这是宽的。这是宽的。这是宽的。这是宽的。这是宽的。这是宽的。这是宽的。这是宽的。*/?";
@@ -3009,6 +3033,30 @@ fn trim_unicode_annotate_unicode_middle_with_label() {
30093033
assert_data_eq!(renderer.render(input), expected_unicode);
30103034
}
30113035

3036+
#[test]
3037+
fn trim_unicode_annotate_unicode_middle_no_label() {
3038+
let source = "/*这是宽的。这是宽的。这是宽的。这是宽的。这是宽的。这是宽的。这是宽的。这是宽的。这是宽的。这是宽的。这是宽的。这是宽的。这是宽的。这是宽的。这是宽的。这是宽的。这是宽的。这是宽的。这是宽的。这是宽的。这是宽的。这是宽的。这是宽的。这是宽的。这是宽的。这是宽的。这是宽的。这是宽的。这是宽的。这是宽的。这是宽的。这是宽的。这是宽的。*/?";
3039+
let input = &[Group::with_level(Level::ERROR)
3040+
.element(Snippet::source(source).annotation(AnnotationKind::Primary.span(251..254)))];
3041+
3042+
let expected_ascii = str![[r#"
3043+
|
3044+
1 | ... 是宽的。这是宽的。这是宽的。这...
3045+
| ^^
3046+
"#]];
3047+
3048+
let renderer = Renderer::plain().term_width(43);
3049+
assert_data_eq!(renderer.render(input), expected_ascii);
3050+
3051+
let expected_unicode = str![[r#"
3052+
╭▸
3053+
1 │ … 这是宽的。这是宽的。这是宽的。这是…
3054+
╰╴ ━━
3055+
"#]];
3056+
let renderer = renderer.decor_style(DecorStyle::Unicode);
3057+
assert_data_eq!(renderer.render(input), expected_unicode);
3058+
}
3059+
30123060
#[test]
30133061
fn trim_ascii_annotate_ascii_end_with_label() {
30143062
let source = "/*aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa*/?";
@@ -3038,6 +3086,30 @@ fn trim_ascii_annotate_ascii_end_with_label() {
30383086
assert_data_eq!(renderer.render(input), expected_unicode);
30393087
}
30403088

3089+
#[test]
3090+
fn trim_ascii_annotate_ascii_end_no_label() {
3091+
let source = "/*aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa*/?";
3092+
let input = &[Group::with_level(Level::ERROR)
3093+
.element(Snippet::source(source).annotation(AnnotationKind::Primary.span(334..335)))];
3094+
3095+
let expected_ascii = str![[r#"
3096+
|
3097+
1 | ...aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa*/?
3098+
| ^
3099+
"#]];
3100+
3101+
let renderer = Renderer::plain();
3102+
assert_data_eq!(renderer.render(input), expected_ascii);
3103+
3104+
let expected_unicode = str![[r#"
3105+
╭▸
3106+
1 │ …aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa*/?
3107+
╰╴ ━
3108+
"#]];
3109+
let renderer = renderer.decor_style(DecorStyle::Unicode);
3110+
assert_data_eq!(renderer.render(input), expected_unicode);
3111+
}
3112+
30413113
#[test]
30423114
fn diagnostic_width() {
30433115
let source = r##"// ignore-tidy-linelength

0 commit comments

Comments
 (0)