Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit da9ea86

Browse files
committed
refactor: Use snapbox::str to auto-update tests
1 parent 1aa3447 commit da9ea86

File tree

1 file changed

+74
-44
lines changed

1 file changed

+74
-44
lines changed

‎tests/formatter.rs‎

Lines changed: 74 additions & 44 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,7 @@
11
use annotate_snippets::{Level, Renderer, Snippet};
22

3+
use snapbox::{assert_eq, str};
4+
35
#[test]
46
fn test_i_29() {
57
let snippets = Level::Error.title("oops").snippet(
@@ -8,16 +10,18 @@ fn test_i_29() {
810
.annotation(Level::Error.span(19..23).label("oops"))
911
.fold(true),
1012
);
11-
let expected = r#"error: oops
13+
let expected = str![[r#"
14+
error: oops
1215
--> <current file>:2:8
1316
|
1417
1 | First line
1518
2 | Second oops line
1619
| ^^^^ oops
17-
|"#;
20+
|"#]]
21+
.indent(false);
1822

1923
let renderer = Renderer::plain();
20-
assert_eq!(renderer.render(snippets).to_string(), expected);
24+
assert_eq(expected,renderer.render(snippets).to_string());
2125
}
2226

2327
#[test]
@@ -28,15 +32,17 @@ fn test_point_to_double_width_characters() {
2832
.annotation(Level::Error.span(18..24).label("world")),
2933
);
3034

31-
let expected = r#"error
35+
let expected = str![[r#"
36+
error
3237
--> <current file>:1:7
3338
|
3439
1 | こんにちは、世界
3540
| ^^^^ world
36-
|"#;
41+
|"#]]
42+
.indent(false);
3743

3844
let renderer = Renderer::plain();
39-
assert_eq!(renderer.render(snippets).to_string(), expected);
45+
assert_eq(expected,renderer.render(snippets).to_string());
4046
}
4147

4248
#[test]
@@ -47,17 +53,19 @@ fn test_point_to_double_width_characters_across_lines() {
4753
.annotation(Level::Error.span(6..22).label("Good morning")),
4854
);
4955

50-
let expected = r#"error
56+
let expected = str![[r#"
57+
error
5158
--> <current file>:1:3
5259
|
5360
1 | おはよう
5461
| _____^
5562
2 | | ございます
5663
| |______^ Good morning
57-
|"#;
64+
|"#]]
65+
.indent(false);
5866

5967
let renderer = Renderer::plain();
60-
assert_eq!(renderer.render(snippets).to_string(), expected);
68+
assert_eq(expected,renderer.render(snippets).to_string());
6169
}
6270

6371
#[test]
@@ -69,17 +77,19 @@ fn test_point_to_double_width_characters_multiple() {
6977
.annotation(Level::Note.span(16..22).label("Sushi2")),
7078
);
7179

72-
let expected = r#"error
80+
let expected = str![[r#"
81+
error
7382
--> <current file>:1:1
7483
|
7584
1 | お寿司
7685
| ^^^^^^ Sushi1
7786
2 | 食べたい🍣
7887
| ---- note: Sushi2
79-
|"#;
88+
|"#]]
89+
.indent(false);
8090

8191
let renderer = Renderer::plain();
82-
assert_eq!(renderer.render(snippets).to_string(), expected);
92+
assert_eq(expected,renderer.render(snippets).to_string());
8393
}
8494

8595
#[test]
@@ -90,24 +100,26 @@ fn test_point_to_double_width_characters_mixed() {
90100
.annotation(Level::Error.span(18..32).label("New world")),
91101
);
92102

93-
let expected = r#"error
103+
let expected = str![[r#"
104+
error
94105
--> <current file>:1:7
95106
|
96107
1 | こんにちは、新しいWorld!
97108
| ^^^^^^^^^^^ New world
98-
|"#;
109+
|"#]]
110+
.indent(false);
99111

100112
let renderer = Renderer::plain();
101-
assert_eq!(renderer.render(snippets).to_string(), expected);
113+
assert_eq(expected,renderer.render(snippets).to_string());
102114
}
103115

104116
#[test]
105117
fn test_format_title() {
106118
let input = Level::Error.title("This is a title").id("E0001");
107119

108-
let expected = r#"error[E0001]: This is a title"#;
120+
let expected = str![r#"error[E0001]: This is a title"#];
109121
let renderer = Renderer::plain();
110-
assert_eq!(renderer.render(input).to_string(), expected);
122+
assert_eq(expected,renderer.render(input).to_string());
111123
}
112124

113125
#[test]
@@ -117,13 +129,15 @@ fn test_format_snippet_only() {
117129
.title("")
118130
.snippet(Snippet::source(source).line_start(5402));
119131

120-
let expected = r#"error
132+
let expected = str![[r#"
133+
error
121134
|
122135
5402 | This is line 1
123136
5403 | This is line 2
124-
|"#;
137+
|"#]]
138+
.indent(false);
125139
let renderer = Renderer::plain();
126-
assert_eq!(renderer.render(input).to_string(), expected);
140+
assert_eq(expected,renderer.render(input).to_string());
127141
}
128142

129143
#[test]
@@ -134,17 +148,19 @@ fn test_format_snippets_continuation() {
134148
.title("")
135149
.snippet(Snippet::source(src_0).line_start(5402).origin("file1.rs"))
136150
.snippet(Snippet::source(src_1).line_start(2).origin("file2.rs"));
137-
let expected = r#"error
151+
let expected = str![[r#"
152+
error
138153
--> file1.rs
139154
|
140155
5402 | This is slice 1
141156
|
142157
::: file2.rs
143158
|
144159
2 | This is slice 2
145-
|"#;
160+
|"#]]
161+
.indent(false);
146162
let renderer = Renderer::plain();
147-
assert_eq!(renderer.render(input).to_string(), expected);
163+
assert_eq(expected,renderer.render(input).to_string());
148164
}
149165

150166
#[test]
@@ -159,25 +175,29 @@ fn test_format_snippet_annotation_standalone() {
159175
.line_start(5402)
160176
.annotation(Level::Info.span(range.clone()).label("Test annotation")),
161177
);
162-
let expected = r#"error
178+
let expected = str![[r#"
179+
error
163180
|
164181
5402 | This is line 1
165182
5403 | This is line 2
166183
| -- info: Test annotation
167-
|"#;
184+
|"#]]
185+
.indent(false);
168186
let renderer = Renderer::plain();
169-
assert_eq!(renderer.render(input).to_string(), expected);
187+
assert_eq(expected,renderer.render(input).to_string());
170188
}
171189

172190
#[test]
173191
fn test_format_footer_title() {
174192
let input = Level::Error
175193
.title("")
176194
.footer(Level::Error.title("This __is__ a title"));
177-
let expected = r#"error
178-
= error: This __is__ a title"#;
195+
let expected = str![[r#"
196+
error
197+
= error: This __is__ a title"#]]
198+
.indent(false);
179199
let renderer = Renderer::plain();
180-
assert_eq!(renderer.render(input).to_string(), expected);
200+
assert_eq(expected,renderer.render(input).to_string());
181201
}
182202

183203
#[test]
@@ -200,13 +220,15 @@ fn test_source_content() {
200220
let input = Level::Error
201221
.title("")
202222
.snippet(Snippet::source(source).line_start(56));
203-
let expected = r#"error
223+
let expected = str![[r#"
224+
error
204225
|
205226
56 | This is an example
206227
57 | of content lines
207-
|"#;
228+
|"#]]
229+
.indent(false);
208230
let renderer = Renderer::plain();
209-
assert_eq!(renderer.render(input).to_string(), expected);
231+
assert_eq(expected,renderer.render(input).to_string());
210232
}
211233

212234
#[test]
@@ -217,13 +239,15 @@ fn test_source_annotation_standalone_singleline() {
217239
.line_start(1)
218240
.annotation(Level::Help.span(0..5).label("Example string")),
219241
);
220-
let expected = r#"error
242+
let expected = str![[r#"
243+
error
221244
|
222245
1 | tests
223246
| ----- help: Example string
224-
|"#;
247+
|"#]]
248+
.indent(false);
225249
let renderer = Renderer::plain();
226-
assert_eq!(renderer.render(input).to_string(), expected);
250+
assert_eq(expected,renderer.render(input).to_string());
227251
}
228252

229253
#[test]
@@ -235,27 +259,31 @@ fn test_source_annotation_standalone_multiline() {
235259
.annotation(Level::Help.span(0..5).label("Example string"))
236260
.annotation(Level::Help.span(0..5).label("Second line")),
237261
);
238-
let expected = r#"error
262+
let expected = str![[r#"
263+
error
239264
|
240265
1 | tests
241266
| ----- help: Example string
242267
| ----- help: Second line
243-
|"#;
268+
|"#]]
269+
.indent(false);
244270
let renderer = Renderer::plain();
245-
assert_eq!(renderer.render(input).to_string(), expected);
271+
assert_eq(expected,renderer.render(input).to_string());
246272
}
247273

248274
#[test]
249275
fn test_only_source() {
250276
let input = Level::Error
251277
.title("")
252278
.snippet(Snippet::source("").origin("file.rs"));
253-
let expected = r#"error
279+
let expected = str![[r#"
280+
error
254281
--> file.rs
255282
|
256-
|"#;
283+
|"#]]
284+
.indent(false);
257285
let renderer = Renderer::plain();
258-
assert_eq!(renderer.render(input).to_string(), expected);
286+
assert_eq(expected,renderer.render(input).to_string());
259287
}
260288

261289
#[test]
@@ -264,13 +292,15 @@ fn test_anon_lines() {
264292
let input = Level::Error
265293
.title("")
266294
.snippet(Snippet::source(source).line_start(56));
267-
let expected = r#"error
295+
let expected = str![[r#"
296+
error
268297
|
269298
LL | This is an example
270299
LL | of content lines
271300
LL |
272301
LL | abc
273-
|"#;
302+
|"#]]
303+
.indent(false);
274304
let renderer = Renderer::plain().anonymized_line_numbers(true);
275-
assert_eq!(renderer.render(input).to_string(), expected);
305+
assert_eq(expected,renderer.render(input).to_string());
276306
}

0 commit comments

Comments
(0)

AltStyle によって変換されたページ (->オリジナル) /