blob: 0bb95adc34c9f5dcaefef898af4b33b38b1a0c1a [file] [log] [blame]
Bram Moolenaar5c06f8b2005-05-31 22:14:58 +00001Tests for :sort command. vim: set ft=vim :
2
3STARTTEST
4:so small.vim
5:"
Bram Moolenaar4c3f5362006-04-11 21:38:50 +00006:/^t01:/+1,/^t02/-1sort
7:/^t02:/+1,/^t03/-1sort n
8:/^t03:/+1,/^t04/-1sort x
9:/^t04:/+1,/^t05/-1sort u
10:/^t05:/+1,/^t06/-1sort!
11:/^t06:/+1,/^t07/-1sort! n
12:/^t07:/+1,/^t08/-1sort! u
13:/^t08:/+1,/^t09/-1sort o
14:/^t09:/+1,/^t10/-1sort! x
15:/^t10:/+1,/^t11/-1sort/./
16:/^t11:/+1,/^t12/-1sort/../
17:/^t12:/+1,/^t13/-1sort/../u
18:/^t13:/+1,/^t14/-1sort/./n
19:/^t14:/+1,/^t15/-1sort/./r
20:/^t15:/+1,/^t16/-1sort/../r
21:/^t16:/+1,/^t17/-1sort/./rn
22:/^t17:/+1,/^t18/-1sort/\d/
23:/^t18:/+1,/^t19/-1sort/\d/r
24:/^t19:/+1,/^t20/-1sort/\d/n
25:/^t20:/+1,/^t21/-1sort/\d/rn
26:/^t21:/+1,/^t22/-1sort/\d\d/
27:/^t22:/+1,/^t23/-1sort/\d\d/n
28:/^t23:/+1,/^t24/-1sort/\d\d/x
29:/^t24:/+1,/^t25/-1sort/\d\d/r
30:/^t25:/+1,/^t26/-1sort/\d\d/rn
31:/^t26:/+1,/^t27/-1sort/\d\d/rx
32:/^t27:/+1,/^t28/-1sort no
Bram Moolenaar887c1fe2016-01-02 17:56:35 +010033:/^t28:/+1,/^t29/-1sort b
34:/^t29:/+1,/^t30/-1sort b
Bram Moolenaar4c3f5362006-04-11 21:38:50 +000035:/^t01:/,$wq! test.out
Bram Moolenaar5c06f8b2005-05-31 22:14:58 +000036ENDTEST
37
Bram Moolenaar4c3f5362006-04-11 21:38:50 +000038t01: alphebetical
39abc
40ab
41a
42a321
43a123
44a122
45b321
46b123
47c123d
48 123b
49c321d
50b322b
51b321
52b321b
53
54
55t02: numeric
56abc
57ab
Bram Moolenaar4c3f5362006-04-11 21:38:50 +000058a321
59a123
60a122
Bram Moolenaarf75d4982010-10-15 20:20:05 +020061a
62x-22
Bram Moolenaar4c3f5362006-04-11 21:38:50 +000063b321
64b123
Bram Moolenaarf75d4982010-10-15 20:20:05 +020065
Bram Moolenaar4c3f5362006-04-11 21:38:50 +000066c123d
Bram Moolenaarf75d4982010-10-15 20:20:05 +020067-24
Bram Moolenaar4c3f5362006-04-11 21:38:50 +000068 123b
69c321d
Bram Moolenaarf75d4982010-10-15 20:20:05 +0200700
Bram Moolenaar4c3f5362006-04-11 21:38:50 +000071b322b
72b321
73b321b
74
75
76t03: hexadecimal
77abc
78ab
79a
80a321
81a123
82a122
83b321
84b123
85c123d
86 123b
87c321d
88b322b
89b321
90b321b
91
92
93t04: alpha, unique
94abc
95ab
96a
97a321
98a123
99a122
100b321
101b123
102c123d
103 123b
104c321d
105b322b
106b321
107b321b
108
109
110t05: alpha, reverse
111abc
112ab
113a
114a321
115a123
116a122
117b321
118b123
119c123d
120 123b
121c321d
122b322b
123b321
124b321b
125
126
127t06: numeric, reverse
128abc
129ab
130a
131a321
132a123
133a122
134b321
135b123
136c123d
137 123b
138c321d
139b322b
140b321
141b321b
142
143
144t07: unique, reverse
145abc
146ab
147a
148a321
149a123
150a122
151b321
152b123
153c123d
154 123b
155c321d
156b322b
157b321
158b321b
159
160
161t08: octal
162abc
163ab
164a
165a321
166a123
167a122
168b321
169b123
170c123d
171 123b
172c321d
173b322b
174b321
175b321b
176
177
178t09: reverse, hexadecimal
179abc
180ab
181a
182a321
183a123
184a122
185b321
186b123
187c123d
188 123b
189c321d
190b322b
191b321
192b321b
193
194
195t10: alpha, skip first character
196abc
197ab
198a
199a321
200a123
201a122
202b321
203b123
204c123d
205 123b
206c321d
207b322b
208b321
209b321b
210
211
212t11: alpha, skip first 2 characters
213abc
214ab
215a
216a321
217a123
218a122
219b321
220b123
221c123d
222 123b
223c321d
224b322b
225b321
226b321b
227
228
229t12: alpha, unique, skip first 2 characters
230abc
231ab
232a
233a321
234a123
235a122
236b321
237b123
238c123d
239 123b
240c321d
241b322b
242b321
243b321b
244
245
246t13: numeric, skip first character
247abc
248ab
249a
250a321
251a123
252a122
253b321
254b123
255c123d
256 123b
257c321d
258b322b
259b321
260b321b
261
262
263t14: alpha, sort on first character
264abc
265ab
266a
267a321
268a123
269a122
270b321
271b123
272c123d
273 123b
274c321d
275b322b
276b321
277b321b
278
279
280t15: alpha, sort on first 2 characters
281abc
282ab
283a
284a321
285a123
286a122
287b321
288b123
289c123d
290 123b
291c321d
292b322b
293b321
294b321b
295
296
297t16: numeric, sort on first character
298abc
299ab
300a
301a321
302a123
303a122
304b321
305b123
306c123d
307 123b
308c321d
309b322b
310b321
311b321b
312
313
314t17: alpha, skip past first digit
315abc
316ab
317a
318a321
319a123
320a122
321b321
322b123
323c123d
324 123b
325c321d
326b322b
327b321
328b321b
329
330
331t18: alpha, sort on first digit
332abc
333ab
334a
335a321
336a123
337a122
338b321
339b123
340c123d
341 123b
342c321d
343b322b
344b321
345b321b
346
347
348t19: numeric, skip past first digit
349abc
350ab
351a
352a321
353a123
354a122
355b321
356b123
357c123d
358 123b
359c321d
360b322b
361b321
362b321b
363
364
365t20: numeric, sort on first digit
366abc
367ab
368a
369a321
370a123
371a122
372b321
373b123
374c123d
375 123b
376c321d
377b322b
378b321
379b321b
380
381
382t21: alpha, skip past first 2 digits
383abc
384ab
385a
386a321
387a123
388a122
389b321
390b123
391c123d
392 123b
393c321d
394b322b
395b321
396b321b
397
398
399t22: numeric, skip past first 2 digits
400abc
401ab
402a
403a321
404a123
405a122
406b321
407b123
408c123d
409 123b
410c321d
411b322b
412b321
413b321b
414
415
416t23: hexadecimal, skip past first 2 digits
417abc
418ab
419a
420a321
421a123
422a122
423b321
424b123
425c123d
426 123b
427c321d
428b322b
429b321
430b321b
431
432
433t24: alpha, sort on first 2 digits
434abc
435ab
436a
437a321
438a123
439a122
440b321
441b123
442c123d
443 123b
444c321d
445b322b
446b321
447b321b
448
449
450t25: numeric, sort on first 2 digits
451abc
452ab
453a
454a321
455a123
456a122
457b321
458b123
459c123d
460 123b
461c321d
462b322b
463b321
464b321b
465
466
467t26: hexadecimal, sort on first 2 digits
468abc
469ab
470a
471a321
472a123
473a122
474b321
475b123
476c123d
477 123b
478c321d
479b322b
480b321
481b321b
482
483
484t27: wrong arguments
485abc
486ab
487a
488a321
489a123
490a122
491b321
492b123
493c123d
494 123b
495c321d
496b322b
497b321
498b321b
Bram Moolenaar887c1fe2016-01-02 17:56:35 +0100499t28: binary
Bram Moolenaar4c3f5362006-04-11 21:38:50 +0000500
501
Bram Moolenaar887c1fe2016-01-02 17:56:35 +01005020b111000
5030b101100
5040b101001
5050b101001
5060b101000
5070b000000
5080b001000
5090b010000
5100b101000
5110b100000
5120b101010
5130b100010
5140b100100
5150b100010
516t29: binary with leading characters
Bram Moolenaar4c3f5362006-04-11 21:38:50 +0000517
Bram Moolenaar887c1fe2016-01-02 17:56:35 +0100518
5190b100010
5200b010000
521 0b101001
522b0b101100
5230b100010
524 0b100100
525a0b001000
5260b101000
5270b101000
528a0b101001
529ab0b100000
5300b101010
5310b000000
532b0b111000
533t30: done