@@ -58,14 +58,22 @@ fn invalid06() {
58
58
59
59
#[ test]
60
60
fn format_nothing ( ) {
61
- same ( "{}" , & [ NextArgument ( Argument { position : ArgumentImplicitlyIs ( 0 ) , format : fmtdflt ( ) } ) ] ) ;
61
+ same (
62
+ "{}" ,
63
+ & [ NextArgument ( Argument {
64
+ position : ArgumentImplicitlyIs ( 0 ) ,
65
+ position_span : InnerSpan { start : 2 , end : 2 } ,
66
+ format : fmtdflt ( ) ,
67
+ } ) ] ,
68
+ ) ;
62
69
}
63
70
#[ test]
64
71
fn format_position ( ) {
65
72
same (
66
73
"{3}" ,
67
74
& [ NextArgument ( Argument {
68
- position : ArgumentIs ( 3 , Some ( InnerSpan { start : 2 , end : 3 } ) ) ,
75
+ position : ArgumentIs ( 3 ) ,
76
+ position_span : InnerSpan { start : 2 , end : 3 } ,
69
77
format : fmtdflt ( ) ,
70
78
} ) ] ,
71
79
) ;
@@ -75,17 +83,30 @@ fn format_position_nothing_else() {
75
83
same (
76
84
"{3:}" ,
77
85
& [ NextArgument ( Argument {
78
- position : ArgumentIs ( 3 , Some ( InnerSpan { start : 2 , end : 3 } ) ) ,
86
+ position : ArgumentIs ( 3 ) ,
87
+ position_span : InnerSpan { start : 2 , end : 3 } ,
79
88
format : fmtdflt ( ) ,
80
89
} ) ] ,
81
90
) ;
82
91
}
83
92
#[ test]
93
+ fn format_named ( ) {
94
+ same (
95
+ "{name}" ,
96
+ & [ NextArgument ( Argument {
97
+ position : ArgumentNamed ( "name" ) ,
98
+ position_span : InnerSpan { start : 2 , end : 6 } ,
99
+ format : fmtdflt ( ) ,
100
+ } ) ] ,
101
+ )
102
+ }
103
+ #[ test]
84
104
fn format_type ( ) {
85
105
same (
86
106
"{3:x}" ,
87
107
& [ NextArgument ( Argument {
88
- position : ArgumentIs ( 3 , Some ( InnerSpan { start : 2 , end : 3 } ) ) ,
108
+ position : ArgumentIs ( 3 ) ,
109
+ position_span : InnerSpan { start : 2 , end : 3 } ,
89
110
format : FormatSpec {
90
111
fill : None ,
91
112
align : AlignUnknown ,
@@ -105,7 +126,8 @@ fn format_align_fill() {
105
126
same (
106
127
"{3:>}" ,
107
128
& [ NextArgument ( Argument {
108
- position : ArgumentIs ( 3 , Some ( InnerSpan { start : 2 , end : 3 } ) ) ,
129
+ position : ArgumentIs ( 3 ) ,
130
+ position_span : InnerSpan { start : 2 , end : 3 } ,
109
131
format : FormatSpec {
110
132
fill : None ,
111
133
align : AlignRight ,
@@ -122,7 +144,8 @@ fn format_align_fill() {
122
144
same (
123
145
"{3:0<}" ,
124
146
& [ NextArgument ( Argument {
125
- position : ArgumentIs ( 3 , Some ( InnerSpan { start : 2 , end : 3 } ) ) ,
147
+ position : ArgumentIs ( 3 ) ,
148
+ position_span : InnerSpan { start : 2 , end : 3 } ,
126
149
format : FormatSpec {
127
150
fill : Some ( '0' ) ,
128
151
align : AlignLeft ,
@@ -139,7 +162,8 @@ fn format_align_fill() {
139
162
same (
140
163
"{3:*<abcd}" ,
141
164
& [ NextArgument ( Argument {
142
- position : ArgumentIs ( 3 , Some ( InnerSpan { start : 2 , end : 3 } ) ) ,
165
+ position : ArgumentIs ( 3 ) ,
166
+ position_span : InnerSpan { start : 2 , end : 3 } ,
143
167
format : FormatSpec {
144
168
fill : Some ( '*' ) ,
145
169
align : AlignLeft ,
@@ -160,6 +184,7 @@ fn format_counts() {
160
184
"{:10x}" ,
161
185
& [ NextArgument ( Argument {
162
186
position : ArgumentImplicitlyIs ( 0 ) ,
187
+ position_span : InnerSpan { start : 2 , end : 2 } ,
163
188
format : FormatSpec {
164
189
fill : None ,
165
190
align : AlignUnknown ,
@@ -177,6 +202,7 @@ fn format_counts() {
177
202
"{:10$.10x}" ,
178
203
& [ NextArgument ( Argument {
179
204
position : ArgumentImplicitlyIs ( 0 ) ,
205
+ position_span : InnerSpan { start : 2 , end : 2 } ,
180
206
format : FormatSpec {
181
207
fill : None ,
182
208
align : AlignUnknown ,
@@ -193,7 +219,8 @@ fn format_counts() {
193
219
same (
194
220
"{1:0$.10x}" ,
195
221
& [ NextArgument ( Argument {
196
- position : ArgumentIs ( 1 , Some ( InnerSpan { start : 2 , end : 3 } ) ) ,
222
+ position : ArgumentIs ( 1 ) ,
223
+ position_span : InnerSpan { start : 2 , end : 3 } ,
197
224
format : FormatSpec {
198
225
fill : None ,
199
226
align : AlignUnknown ,
@@ -211,6 +238,7 @@ fn format_counts() {
211
238
"{:.*x}" ,
212
239
& [ NextArgument ( Argument {
213
240
position : ArgumentImplicitlyIs ( 1 ) ,
241
+ position_span : InnerSpan { start : 2 , end : 2 } ,
214
242
format : FormatSpec {
215
243
fill : None ,
216
244
align : AlignUnknown ,
@@ -228,6 +256,7 @@ fn format_counts() {
228
256
"{:.10$x}" ,
229
257
& [ NextArgument ( Argument {
230
258
position : ArgumentImplicitlyIs ( 0 ) ,
259
+ position_span : InnerSpan { start : 2 , end : 2 } ,
231
260
format : FormatSpec {
232
261
fill : None ,
233
262
align : AlignUnknown ,
@@ -245,6 +274,7 @@ fn format_counts() {
245
274
"{:a$.b$?}" ,
246
275
& [ NextArgument ( Argument {
247
276
position : ArgumentImplicitlyIs ( 0 ) ,
277
+ position_span : InnerSpan { start : 2 , end : 2 } ,
248
278
format : FormatSpec {
249
279
fill : None ,
250
280
align : AlignUnknown ,
@@ -265,6 +295,7 @@ fn format_flags() {
265
295
"{:-}" ,
266
296
& [ NextArgument ( Argument {
267
297
position : ArgumentImplicitlyIs ( 0 ) ,
298
+ position_span : InnerSpan { start : 2 , end : 2 } ,
268
299
format : FormatSpec {
269
300
fill : None ,
270
301
align : AlignUnknown ,
@@ -282,6 +313,7 @@ fn format_flags() {
282
313
"{:+#}" ,
283
314
& [ NextArgument ( Argument {
284
315
position : ArgumentImplicitlyIs ( 0 ) ,
316
+ position_span : InnerSpan { start : 2 , end : 2 } ,
285
317
format : FormatSpec {
286
318
fill : None ,
287
319
align : AlignUnknown ,
@@ -303,7 +335,8 @@ fn format_mixture() {
303
335
& [
304
336
String ( "abcd " ) ,
305
337
NextArgument ( Argument {
306
- position : ArgumentIs ( 3 , Some ( InnerSpan { start : 7 , end : 8 } ) ) ,
338
+ position : ArgumentIs ( 3 ) ,
339
+ position_span : InnerSpan { start : 7 , end : 8 } ,
307
340
format : FormatSpec {
308
341
fill : None ,
309
342
align : AlignUnknown ,
@@ -320,3 +353,22 @@ fn format_mixture() {
320
353
] ,
321
354
) ;
322
355
}
356
+ #[ test]
357
+ fn format_whitespace ( ) {
358
+ same (
359
+ "{ }" ,
360
+ & [ NextArgument ( Argument {
361
+ position : ArgumentImplicitlyIs ( 0 ) ,
362
+ position_span : InnerSpan { start : 2 , end : 3 } ,
363
+ format : fmtdflt ( ) ,
364
+ } ) ] ,
365
+ ) ;
366
+ same (
367
+ "{ }" ,
368
+ & [ NextArgument ( Argument {
369
+ position : ArgumentImplicitlyIs ( 0 ) ,
370
+ position_span : InnerSpan { start : 2 , end : 4 } ,
371
+ format : fmtdflt ( ) ,
372
+ } ) ] ,
373
+ ) ;
374
+ }
0 commit comments