source: trunk/unittests/FileUtilsUnitTests.pas@ 238

Last change on this file since 238 was 238, checked in by RBRi, 18 years ago

improved directory flag handling (see #31)

  • Property svn:eol-style set to native
File size: 38.2 KB
RevLine 
[82]1Unit FileUtilsUnitTests;
2
[222]3// NewView - a new OS/2 Help Viewer
4// Copyright 2006-2007 Ronald Brill (rbri at rbri dot de)
5// This software is released under the GNU Public License - see readme.txt
6
7// UnitTests for FileUtilsUnit
8
[82]9Interface
10
11uses
12 Classes,
13 TestAssert,
14 FileUtilsUnit;
15
[185]16const
17 // TODO read environment var
18 TEST_PATH = 'P:\newview_dev';
[82]19
20 FUNCTION getFileUtilsUnitTests : TList;
21
22
23Implementation
24
25 Procedure testAddDirectorySeparator_Empty;
26 var
27 tmpResult : String;
28 begin
29 tmpResult := AddDirectorySeparator('');
30
31 assertEqualsString('testAddDirectorySeparator_Empty', '\', tmpResult);
32 end;
33
34 Procedure testAddDirectorySeparator_SingleChar;
35 var
36 tmpResult : String;
37 begin
38 tmpResult := AddDirectorySeparator('x');
39
40 assertEqualsString('testAddDirectorySeparator_SingleChar', 'x\', tmpResult);
41 end;
42
43 Procedure testAddDirectorySeparator_ManyChars;
44 var
45 tmpResult : String;
46 begin
47 tmpResult := AddDirectorySeparator('xyz dkdj ');
48
49 assertEqualsString('testAddDirectorySeparator_ManyChars', 'xyz dkdj \', tmpResult);
50 end;
51
52
53 Procedure testAddDirectorySeparator_SlashAtEnd;
54 var
55 tmpResult : String;
56 begin
57 tmpResult := AddDirectorySeparator('xy\');
58
59 assertEqualsString('testAddDirectorySeparator_SlashAtEnd', 'xy\', tmpResult);
60 end;
61
62
63 // ----------------------------------------------------------
64
65
66 Procedure testAddDirectorySeparatorIfNotEmpty_Empty;
67 var
68 tmpResult : String;
69 begin
70 tmpResult := AddDirectorySeparatorIfNotEmpty('');
71
72 assertEqualsString('testAddDirectorySeparatorIfNotEmpty_Empty', '', tmpResult);
73 end;
74
75 Procedure testAddDirectorySeparatorIfNotEmpty_SingleChar;
76 var
77 tmpResult : String;
78 begin
79 tmpResult := AddDirectorySeparatorIfNotEmpty('x');
80
81 assertEqualsString('testAddDirectorySeparatorIfNotEmpty_SingleChar', 'x\', tmpResult);
82 end;
83
84 Procedure testAddDirectorySeparatorIfNotEmpty_ManyChars;
85 var
86 tmpResult : String;
87 begin
88 tmpResult := AddDirectorySeparatorIfNotEmpty('xyz dkdj ');
89
90 assertEqualsString('testAddDirectorySeparatorIfNotEmpty_ManyChars', 'xyz dkdj \', tmpResult);
91 end;
92
93
94 Procedure testAddDirectorySeparatorIfNotEmpty_SlashAtEnd;
95 var
96 tmpResult : String;
97 begin
98 tmpResult := AddDirectorySeparatorIfNotEmpty('xy\');
99
100 assertEqualsString('testAddDirectorySeparatorIfNotEmpty_SlashAtEnd', 'xy\', tmpResult);
101 end;
102
103
104 // ----------------------------------------------------------
105
106
107 Procedure testRemoveRightDirectorySeparator_Empty;
108 var
109 tmpResult : String;
110 begin
111 tmpResult := RemoveRightDirectorySeparator('');
112
113 assertEqualsString('testRemoveRightDirectorySeparator_Empty', '', tmpResult);
114 end;
115
116
117 Procedure testRemoveRightDirectorySeparator_WithoutSlash;
118 var
119 tmpResult : String;
120 begin
121 tmpResult := RemoveRightDirectorySeparator('abc');
122
123 assertEqualsString('testRemoveRightDirectorySeparator_WithoutSlash', 'abc', tmpResult);
124 end;
125
126
127 Procedure testRemoveRightDirectorySeparator_WithSlash;
128 var
129 tmpResult : String;
130 begin
131 tmpResult := RemoveRightDirectorySeparator('abc\');
132
133 assertEqualsString('testRemoveRightDirectorySeparator_WithSlash', 'abc', tmpResult);
134 end;
135
136
137 // ----------------------------------------------------------
138
139 Procedure testExpandPath_BothEmpty;
140 var
141 tmpResult : String;
142 begin
143 tmpResult := ExpandPath('', '');
144
145 assertEqualsString('testExpandPath_BothEmpty', '', tmpResult);
146 end;
147
148
149 Procedure testExpandPath_PathEmpty;
150 var
151 tmpResult : String;
152 begin
153 tmpResult := ExpandPath('\abc\def', '');
154
155 assertEqualsString('testExpandPath_PathEmpty', '\abc\def', tmpResult);
156 end;
157
158
159 Procedure testExpandPath_PathEmptyDirEndsWithSlash;
160 var
161 tmpResult : String;
162 begin
163 tmpResult := ExpandPath('\abc\def\', '');
164
165 assertEqualsString('testExpandPath_PathEmpty', '\abc\def', tmpResult);
166 end;
167
168
169 Procedure testExpandPath_AbsolutePath;
170 var
171 tmpResult : String;
172 begin
173 tmpResult := ExpandPath('\abc\def', 'c:\test');
174
175 assertEqualsString('testExpandPath_AbsolutePath', 'c:\test', tmpResult);
176 end;
177
178
179 Procedure testExpandPath_DriveWithSlash;
180 var
181 tmpResult : String;
182 begin
183 tmpResult := ExpandPath('\abc\def', 'c:\');
184
185 assertEqualsString('testExpandPath_DriveWithSlash', 'c:\', tmpResult);
186 end;
187
188
189 Procedure testExpandPath_DriveWithoutSlash;
190 var
191 tmpResult : String;
192 begin
193 tmpResult := ExpandPath('\abc\def', 'c:');
194
195 assertEqualsString('testExpandPath_DriveWithoutSlash', 'c:\', tmpResult);
196 end;
197
198
199 Procedure testExpandPath_RootPathForDrive;
200 var
201 tmpResult : String;
202 begin
203 tmpResult := ExpandPath('d:\abc\def', '\');
204
205 assertEqualsString('testExpandPath_RootPathForDrive', 'd:\', tmpResult);
206 end;
207
208
209 Procedure testExpandPath_RootDirForDrive;
210 var
211 tmpResult : String;
212 begin
213 tmpResult := ExpandPath('d:\abc\def', '\xy');
214
215 assertEqualsString('testExpandPath_RootDirForDrive', 'd:\xy', tmpResult);
216 end;
217
218
219 Procedure testExpandPath_RootPathWithoutDrive;
220 var
221 tmpResult : String;
222 begin
223 tmpResult := ExpandPath('abc\def', '\');
224
225 assertEqualsString('testExpandPath_RootPathWithoutDrive', '\', tmpResult);
226 end;
227
228
229 Procedure testExpandPath_RootDirWithoutDrive;
230 var
231 tmpResult : String;
232 begin
233 tmpResult := ExpandPath('abc\def', '\xyz');
234
235 assertEqualsString('testExpandPath_RootDirWithoutDrive', '\xyz', tmpResult);
236 end;
237
238
239 Procedure testExpandPath_AppendWithSlash;
240 var
241 tmpResult : String;
242 begin
243 tmpResult := ExpandPath('abc\def\', 'xyz');
244
245 assertEqualsString('testExpandPath_AppendWithSlash', 'abc\def\xyz', tmpResult);
246 end;
247
248
249 Procedure testExpandPath_AppendWithoutSlash;
250 var
251 tmpResult : String;
252 begin
253 tmpResult := ExpandPath('abc\def', 'xyz');
254
255 assertEqualsString('testExpandPath_AppendWithoutSlash', 'abc\def\xyz', tmpResult);
256 end;
257
258
259 Procedure testExpandPath_AppendWithSlashAtEnd;
260 var
261 tmpResult : String;
262 begin
263 tmpResult := ExpandPath('abc\def', 'xyz\');
264
265 assertEqualsString('testExpandPath_AppendWithSlashAtEnd', 'abc\def\xyz', tmpResult);
266 end;
267
268
269 Procedure testExpandPath_WithDot;
270 var
271 tmpResult : String;
272 begin
273 tmpResult := ExpandPath('abc\def', 'xyz\.\abc');
274
275 assertEqualsString('testExpandPath_WithDot', 'abc\def\xyz\abc', tmpResult);
276 end;
277
278
279 Procedure testExpandPath_WithDotAtEnd;
280 var
281 tmpResult : String;
282 begin
283 tmpResult := ExpandPath('abc\def', 'xyz\.');
284
285 assertEqualsString('testExpandPath_WithDotAtEnd', 'abc\def\xyz', tmpResult);
286 end;
287
288
289 Procedure testExpandPath_WithDots;
290 var
291 tmpResult : String;
292 begin
293 tmpResult := ExpandPath('abc\def', 'xyz\..\abc');
294
295 assertEqualsString('testExpandPath_WithDots', 'abc\def\abc', tmpResult);
296 end;
297
298
299 Procedure testExpandPath_WithDotsAtEnd;
300 var
301 tmpResult : String;
302 begin
303 tmpResult := ExpandPath('abc\def', 'xyz\..');
304
305 assertEqualsString('testExpandPath_WithDotsAtEnd', 'abc\def', tmpResult);
306 end;
307
308
309 Procedure testExpandPath_WithDotsInFront;
310 var
311 tmpResult : String;
312 begin
313 tmpResult := ExpandPath('abc\def', '..\xyz');
314
315 assertEqualsString('testExpandPath_WithDotsInFront', 'abc\xyz', tmpResult);
316 end;
317
318
319 Procedure testExpandPath_WithDotsInFrontReachingRoot;
320 var
321 tmpResult : String;
322 begin
323 tmpResult := ExpandPath('abc\def', '..\..\xyz');
324
325 assertEqualsString('testExpandPath_WithDotsInFrontReachingRoot', '\xyz', tmpResult);
326 end;
327
328
329 Procedure testExpandPath_WithDotsInFrontReachingDrive;
330 var
331 tmpResult : String;
332 begin
333 tmpResult := ExpandPath('c:\abc\def', '..\..\xyz');
334
335 assertEqualsString('testExpandPath_WithDotsInFront', 'c:\xyz', tmpResult);
336 end;
337
338
339 Procedure testExpandPath_WithDotsInFrontLeavingRoot;
340 var
341 tmpResult : String;
342 begin
343 tmpResult := ExpandPath('abc\def', '..\..\..\xyz');
344
345 assertEqualsString('testExpandPath_WithDotsInFrontLeavingRoot', '\xyz', tmpResult);
346 end;
347
348
349 Procedure testExpandPath_WithDotsInFrontLeavingDrive;
350 var
351 tmpResult : String;
352 begin
353 tmpResult := ExpandPath('c:\abc\def', '..\..\..\xyz');
354
355 assertEqualsString('testExpandPath_WithDotsInFrontLeavingDrive', 'c:\xyz', tmpResult);
356 end;
357
358
359 // ----------------------------------------------------------
360
361
362 Procedure testGetLogFilesDir;
363 var
364 tmpResult : String;
365 begin
366 tmpResult := GetLogFilesDir;
367
368 assertEqualsString('testGetLogFilesDir', 'C:\var\log\', tmpResult);
369 end;
370
371
372 // ----------------------------------------------------------
373
374 Procedure testSearchPath_Found;
375 var
376 tmpResult : Boolean;
377 tmpResultFilename : String;
378 begin
379 tmpResult := SearchPath('BOOKSHELF', 'CMDREF.INF', tmpResultFilename);
380
381 assertTrue('testSearchPath_Found', tmpResult);
382 assertEqualsString('testSearchPath_Found', 'C:\OS2\BOOK\CMDREF.INF', tmpResultFilename);
383 end;
384
385
386 Procedure testSearchPath_FoundMixedCase;
387 var
388 tmpResult : Boolean;
389 tmpResultFilename : String;
390 begin
391 tmpResult := SearchPath('BOOKSHELF', 'cMdRef.iNf', tmpResultFilename);
392
393 assertTrue('testSearchPath_FoundMixedCase', tmpResult);
394 assertEqualsString('testSearchPath_FoundMixedCase', 'C:\OS2\BOOK\cMdRef.iNf', tmpResultFilename);
395 end;
396
397
398 Procedure testSearchPath_NotFound;
399 var
400 tmpResult : Boolean;
401 tmpResultFilename : String;
402 begin
403 tmpResult := SearchPath('BOOKSHELF', 'RBRi.INF', tmpResultFilename);
404
405 assertFalse('testSearchPath_NotFound', tmpResult);
406 assertEqualsString('testSearchPath_NotFound', '', tmpResultFilename);
407 end;
408
409
410 Procedure testSearchPath_NotExistingEnvironment;
411 var
412 tmpResult : Boolean;
413 tmpResultFilename : String;
414 begin
415 tmpResult := SearchPath('BUECHER', 'RBRi.INF', tmpResultFilename);
416
417 assertFalse('testSearchPath_NotExistingEnvironment', tmpResult);
418 assertEqualsString('testSearchPath_NotExistingEnvironment', '', tmpResultFilename);
419 end;
420
421 // ----------------------------------------------------------
422
423 Procedure testSearchHelpPaths_FoundBookshelf;
424 var
425 tmpResult : Boolean;
426 tmpResultFilename : String;
427 begin
428 tmpResult := SearchHelpPaths('CMDREF.INF', tmpResultFilename, false);
429
430 assertTrue('testSearchHelpPaths_FoundBookshelf', tmpResult);
431 assertEqualsString('testSearchHelpPaths_FoundBookshelf', 'C:\OS2\BOOK\CMDREF.INF', tmpResultFilename);
432 end;
433
434
435 Procedure testSearchHelpPaths_FoundHelp;
436 var
437 tmpResult : Boolean;
438 tmpResultFilename : String;
439 begin
440 tmpResult := SearchHelpPaths('WPHELP.HLP', tmpResultFilename, false);
441
442 assertTrue('testSearchHelpPaths_FoundHelp', tmpResult);
443 assertEqualsString('testSearchHelpPaths_FoundHelp', 'C:\OS2\HELP\WPHELP.HLP', tmpResultFilename);
444 end;
445
446{ . is part of the helppath
447 Procedure testSearchHelpPaths_DontSearchInAppDir;
448 var
449 tmpResult : Boolean;
450 tmpResultFilename : String;
451 begin
452 tmpResult := SearchHelpPaths('NewViewTests.EXE', tmpResultFilename, False);
453
454 assertFalse('testSearchHelpPaths_DontSearchInAppDir', tmpResult);
455 assertEqualsString('testSearchHelpPaths_DontSearchInAppDir', '', tmpResultFilename);
456 end;
457}
458
459 Procedure testSearchHelpPaths_FoundInAppDir;
460 var
461 tmpResult : Boolean;
462 tmpResultFilename : String;
463 begin
464 tmpResult := SearchHelpPaths('NewViewTests.EXE', tmpResultFilename, True);
465
466 assertTrue('testSearchHelpPaths_FoundInAppDir', tmpResult);
[185]467 assertEqualsString('testSearchHelpPaths_FoundInAppDir', TEST_PATH + '\build\unittest\NewViewTests.EXE', tmpResultFilename);
[82]468 end;
469
470
471 Procedure testSearchHelpPaths_NotFoundInAppDir;
472 var
473 tmpResult : Boolean;
474 tmpResultFilename : String;
475 begin
476 tmpResult := SearchHelpPaths('NewView.EXE', tmpResultFilename, True);
477
478 assertFalse('testSearchHelpPaths_NotFoundInAppDir', tmpResult);
479 assertEqualsString('testSearchHelpPaths_NotFoundInAppDir', '', tmpResultFilename);
480 end;
481
482 // ----------------------------------------------------------
483
484 Procedure testFindDefaultLanguageHelpFile;
485 var
486 tmpResult : String;
487 begin
488 tmpResult := FindDefaultLanguageHelpFile('NewView', '');
489
490 assertEqualsString('testFindDefaultLanguageHelpFile', 'C:\ecs\help\NewView.hlp', tmpResult);
491 end;
492
493 Procedure testFindDefaultLanguageHelpFile_it;
494 var
495 tmpResult : String;
496 begin
497 tmpResult := FindDefaultLanguageHelpFile('NewView', 'it');
498
499 assertEqualsString('testFindDefaultLanguageHelpFile_it', 'C:\ecs\help\NewView_it.hlp', tmpResult);
500 end;
501
502 Procedure testFindDefaultLanguageHelpFile_it_UpperCase;
503 var
504 tmpResult : String;
505 begin
506 tmpResult := FindDefaultLanguageHelpFile('NewView', 'IT');
507
508 assertEqualsString('testFindDefaultLanguageHelpFile_it_UpperCase', 'C:\ecs\help\NewView_IT.hlp', tmpResult);
509 end;
510
511
512 // ----------------------------------------------------------
513
514
515 Procedure testGetDirsInPath_Unknown;
516 var
517 tmpResult : TStringList;
518 begin
519 tmpResult := TStringList.Create;
520 tmpResult.Add('Tester');
521
522 GetDirsInPath('Unknown', tmpResult);
523
524 assertEqualsInt('testGetDirsInPath_Unknown', 0, tmpResult.count);
525
526 tmpResult.Destroy;
527 end;
528
529
530 Procedure testGetDirsInPath_Help;
531 var
532 tmpResult : TStringList;
533 begin
534 tmpResult := TStringList.Create;
535 tmpResult.Add('Tester');
536
537 GetDirsInPath('HELP', tmpResult);
538
539 assertEqualsInt('testGetDirsInPath_Help', 15, tmpResult.count);
540 assertEqualsString('testGetDirsInPath_Help', 'D:\progs\watcom\BINP\HELP', tmpResult[0]);
541 assertEqualsString('testGetDirsInPath_Help', 'd:\progs\SIBYL\BIN', tmpResult[14]);
542
543 tmpResult.Destroy;
544 end;
545
546 // ----------------------------------------------------------
547
548 Procedure testListFilesInDirectory_NoFiles;
549 var
550 tmpResult : TStringList;
551 begin
552 tmpResult := TStringList.Create;
553
[185]554 ListFilesInDirectory(TEST_PATH + '\unittests\testdir', '*.jonas', false, tmpResult);
[82]555
556 assertEqualsInt('testListFilesInDirectory_NoFiles', 0, tmpResult.count);
557 end;
558
559
560 Procedure testListFilesInDirectory_EmptyFilter;
561 var
562 tmpResult : TStringList;
563 begin
564 tmpResult := TStringList.Create;
565
[185]566 ListFilesInDirectory(TEST_PATH + '\unittests\testdir', '', false, tmpResult);
[82]567
568 assertEqualsInt('testListFilesInDirectory_EmptyFilter', 0, tmpResult.count);
569
570 tmpResult.Destroy;
571 end;
572
573
574 Procedure testListFilesInDirectory_OneFile;
575 var
576 tmpResult : TStringList;
577 begin
578 tmpResult := TStringList.Create;
579
[185]580 ListFilesInDirectory(TEST_PATH + '\unittests\testdir', '*.txt', false, tmpResult);
[82]581
582 assertEqualsInt('testListFilesInDirectory_OneFile', 1, tmpResult.count);
[185]583 assertEqualsString('testListFilesInDirectory_OneFile', 'readme.txt', tmpResult[0]);
[82]584
585 tmpResult.Destroy;
586 end;
587
588
589 Procedure testListFilesInDirectory_ManyFiles;
590 var
591 tmpResult : TStringList;
592 begin
593 tmpResult := TStringList.Create;
594
[185]595 ListFilesInDirectory(TEST_PATH + '\unittests\testdir', '*.*', false, tmpResult);
[82]596
[185]597 assertEqualsInt('testListFilesInDirectory_ManyFiles', 6, tmpResult.count);
598 assertEqualsString('testListFilesInDirectory_ManyFiles', 'file0', tmpResult[0]);
599 assertEqualsString('testListFilesInDirectory_ManyFiles', 'file1.ex1', tmpResult[1]);
600 assertEqualsString('testListFilesInDirectory_ManyFiles', 'file2.ex1', tmpResult[2]);
601 assertEqualsString('testListFilesInDirectory_ManyFiles', 'file3.ex3', tmpResult[3]);
602 assertEqualsString('testListFilesInDirectory_ManyFiles', 'file4.ext4', tmpResult[4]);
[82]603
604 tmpResult.Destroy;
605 end;
606
607
608 Procedure testListFilesInDirectory_ManyFilter;
609 var
610 tmpResult : TStringList;
611 begin
612 tmpResult := TStringList.Create;
613
[185]614 ListFilesInDirectory(TEST_PATH + '\unittests\testdir', '*.txt;f*.ex1', false, tmpResult);
[82]615
[185]616 assertEqualsInt('testListFilesInDirectory_ManyFilter', 3, tmpResult.count);
617 assertEqualsString('testListFilesInDirectory_ManyFilter', 'readme.txt', tmpResult[0]);
618 assertEqualsString('testListFilesInDirectory_ManyFiles', 'file1.ex1', tmpResult[1]);
619 assertEqualsString('testListFilesInDirectory_ManyFiles', 'file2.ex1', tmpResult[2]);
[82]620
621 tmpResult.Destroy;
622 end;
623
[97]624
[82]625 // ----------------------------------------------------------
626
[97]627
628 Procedure testListFilesInDirectoryWithDirectoryInResult_NoFiles;
629 var
630 tmpResult : TStringList;
631 begin
632 tmpResult := TStringList.Create;
633
[185]634 ListFilesInDirectory(TEST_PATH + '\unittests\testdir', '*.jonas', true, tmpResult);
[97]635
636 assertEqualsInt('testListFilesInDirectoryWithDirectoryInResult_NoFiles', 0, tmpResult.count);
637 end;
638
639
640 Procedure testListFilesInDirectoryWithDirectoryInResult_EmptyFilter;
641 var
642 tmpResult : TStringList;
643 begin
644 tmpResult := TStringList.Create;
645
[185]646 ListFilesInDirectory(TEST_PATH + '\unittests\testdir', '', true, tmpResult);
[97]647
648 assertEqualsInt('testListFilesInDirectoryWithDirectoryInResult_EmptyFilter', 0, tmpResult.count);
649
650 tmpResult.Destroy;
651 end;
652
653
654 Procedure testListFilesInDirectoryWithDirectoryInResult_OneFile;
655 var
656 tmpResult : TStringList;
657 begin
658 tmpResult := TStringList.Create;
659
[185]660 ListFilesInDirectory(TEST_PATH + '\unittests\testdir', '*.txt', true, tmpResult);
[97]661
662 assertEqualsInt('testListFilesInDirectoryWithDirectoryInResult_OneFile', 1, tmpResult.count);
[185]663 assertEqualsString('testListFilesInDirectoryWithDirectoryInResult_OneFile', TEST_PATH + '\unittests\testdir' + '\readme.txt', tmpResult[0]);
[97]664
665 tmpResult.Destroy;
666 end;
667
668
669 Procedure testListFilesInDirectoryWithDirectoryInResult_ManyFiles;
670 var
671 tmpResult : TStringList;
672 begin
673 tmpResult := TStringList.Create;
674
[185]675 ListFilesInDirectory(TEST_PATH + '\unittests\testdir', '*.*', true, tmpResult);
[97]676
[185]677 assertEqualsInt('testListFilesInDirectoryWithDirectoryInResult_ManyFiles', 6, tmpResult.count);
678 assertEqualsString('testListFilesInDirectoryWithDirectoryInResult_ManyFiles', TEST_PATH + '\unittests\testdir' + '\file0', tmpResult[0]);
679 assertEqualsString('testListFilesInDirectoryWithDirectoryInResult_ManyFiles', TEST_PATH + '\unittests\testdir' + '\file1.ex1', tmpResult[1]);
680 assertEqualsString('testListFilesInDirectoryWithDirectoryInResult_ManyFiles', TEST_PATH + '\unittests\testdir' + '\file2.ex1', tmpResult[2]);
681 assertEqualsString('testListFilesInDirectoryWithDirectoryInResult_ManyFiles', TEST_PATH + '\unittests\testdir' + '\file3.ex3', tmpResult[3]);
682 assertEqualsString('testListFilesInDirectoryWithDirectoryInResult_ManyFiles', TEST_PATH + '\unittests\testdir' + '\file4.ext4', tmpResult[4]);
683 assertEqualsString('testListFilesInDirectoryWithDirectoryInResult_ManyFiles', TEST_PATH + '\unittests\testdir' + '\readme.txt', tmpResult[5]);
[97]684
685 tmpResult.Destroy;
686 end;
687
688
689 Procedure testListFilesInDirectoryWithDirectoryInResult_ManyFilter;
690 var
691 tmpResult : TStringList;
692 begin
693 tmpResult := TStringList.Create;
694
[185]695 ListFilesInDirectory(TEST_PATH + '\unittests\testdir', '*.txt;f*.ex1', true, tmpResult);
[97]696
[185]697 assertEqualsInt('testListFilesInDirectoryWithDirectoryInResult_ManyFilter', 3, tmpResult.count);
698 assertEqualsString('testListFilesInDirectoryWithDirectoryInResult_ManyFilter', TEST_PATH + '\unittests\testdir' + '\readme.txt', tmpResult[0]);
699 assertEqualsString('testListFilesInDirectoryWithDirectoryInResult_ManyFilter', TEST_PATH + '\unittests\testdir' + '\file1.ex1', tmpResult[1]);
700 assertEqualsString('testListFilesInDirectoryWithDirectoryInResult_ManyFilter', TEST_PATH + '\unittests\testdir' + '\file2.ex1', tmpResult[2]);
[97]701
702 tmpResult.Destroy;
703 end;
704
705 // ----------------------------------------------------------
706
[82]707 Procedure testListSubDirectories_None;
708 var
709 tmpResult : TStringList;
710 begin
711 tmpResult := TStringList.Create;
712
[238]713 ListSubDirectories(TEST_PATH + '\unittests\testdir\subdir1', false, tmpResult);
[82]714
715 assertEqualsInt('testListSubDirectories_None', 0, tmpResult.count);
716
717 tmpResult.Destroy;
718 end;
719
720
[238]721 Procedure testListSubDirectories_NoneWithHidden;
722 var
723 tmpResult : TStringList;
724 begin
725 tmpResult := TStringList.Create;
726
727 ListSubDirectories(TEST_PATH + '\unittests\testdir\subdir1', true, tmpResult);
728
729 assertEqualsInt('testListSubDirectories_NoneWithHidden', 1, tmpResult.count);
730 assertEqualsString('testListSubDirectories_NoneWithHidden', TEST_PATH + '\unittests\testdir\subdir1\.svn', tmpResult[0]);
731
732 tmpResult.Destroy;
733 end;
734
735
[82]736 Procedure testListSubDirectories_Many;
737 var
738 tmpResult : TStringList;
739 begin
740 tmpResult := TStringList.Create;
741
[238]742 ListSubDirectories(TEST_PATH + '\unittests\testdir', false, tmpResult);
[82]743
[238]744 assertEqualsInt('testListSubDirectories_Many', 3, tmpResult.count);
745 assertEqualsString('testListSubDirectories_Many', TEST_PATH + '\unittests\testdir\dir_archived', tmpResult[0]);
746 assertEqualsString('testListSubDirectories_Many', TEST_PATH + '\unittests\testdir\dir_readonly', tmpResult[1]);
747 assertEqualsString('testListSubDirectories_Many', TEST_PATH + '\unittests\testdir\subdir1', tmpResult[2]);
[82]748
749 tmpResult.Destroy;
750 end;
751
752
[238]753 Procedure testListSubDirectories_ManyWithHidden;
754 var
755 tmpResult : TStringList;
756 begin
757 tmpResult := TStringList.Create;
758
759 ListSubDirectories(TEST_PATH + '\unittests\testdir', true, tmpResult);
760
761 assertEqualsInt('testListSubDirectories_ManyWithHidden', 6, tmpResult.count);
762 assertEqualsString('testListSubDirectories_ManyWithHidden', TEST_PATH + '\unittests\testdir\.svn', tmpResult[0]);
763 assertEqualsString('testListSubDirectories_ManyWithHidden', TEST_PATH + '\unittests\testdir\dir_archived', tmpResult[1]);
764 assertEqualsString('testListSubDirectories_ManyWithHidden', TEST_PATH + '\unittests\testdir\dir_hidden', tmpResult[2]);
765 assertEqualsString('testListSubDirectories_ManyWithHidden', TEST_PATH + '\unittests\testdir\dir_readonly', tmpResult[3]);
766 assertEqualsString('testListSubDirectories_ManyWithHidden', TEST_PATH + '\unittests\testdir\dir_system', tmpResult[4]);
767 assertEqualsString('testListSubDirectories_ManyWithHidden', TEST_PATH + '\unittests\testdir\subdir1', tmpResult[5]);
768
769 tmpResult.Destroy;
770 end;
771
772
[82]773 // ----------------------------------------------------------
774
775
[238]776 Procedure testListFilesInDirectoryRecursiveWithTermination;
[97]777 var
778 tmpResult : TStringList;
779 begin
780 tmpResult := TStringList.Create;
781
[238]782 ListFilesInDirectoryRecursiveWithTermination(TEST_PATH + '\unittests\testdir', '*.ex1;ex2;file_in_*', false, false, tmpResult, nil, false);
[97]783
[238]784 assertEqualsInt('testListFilesInDirectoryRecursiveWithTermination', 5, tmpResult.count);
785 assertEqualsString('testListFilesInDirectoryRecursiveWithTermination 0', 'file1.ex1', tmpResult[0]);
786 assertEqualsString('testListFilesInDirectoryRecursiveWithTermination 1', 'file2.ex1', tmpResult[1]);
787 assertEqualsString('testListFilesInDirectoryRecursiveWithTermination 2', 'file_in_archived', tmpResult[2]);
788 assertEqualsString('testListFilesInDirectoryRecursiveWithTermination 3', 'file_in_readonly', tmpResult[3]);
789 assertEqualsString('testListFilesInDirectoryRecursiveWithTermination 4', 'file1.ex1', tmpResult[4]);
790
791 tmpResult.Destroy;
792 end;
793
794
795 Procedure testListFilesInDirectoryRecursiveWithTermination_WithHidden;
796 var
797 tmpResult : TStringList;
798 begin
799 tmpResult := TStringList.Create;
800
801 ListFilesInDirectoryRecursiveWithTermination(TEST_PATH + '\unittests\testdir', '*.ex1;ex2;file_in_*', false, true, tmpResult, nil, false);
802
803 assertEqualsInt('testListFilesInDirectoryRecursiveWithTermination_WithHidden', 7, tmpResult.count);
804 assertEqualsString('testListFilesInDirectoryRecursiveWithTermination_WithHidden 0', 'file1.ex1', tmpResult[0]);
805 assertEqualsString('testListFilesInDirectoryRecursiveWithTermination_WithHidden 1', 'file2.ex1', tmpResult[1]);
806 assertEqualsString('testListFilesInDirectoryRecursiveWithTermination_WithHidden 2', 'file_in_archived', tmpResult[2]);
807 assertEqualsString('testListFilesInDirectoryRecursiveWithTermination_WithHidden 3', 'file_in_hidden', tmpResult[3]);
808 assertEqualsString('testListFilesInDirectoryRecursiveWithTermination_WithHidden 4', 'file_in_readonly', tmpResult[4]);
809 assertEqualsString('testListFilesInDirectoryRecursiveWithTermination_WithHidden 5', 'file_in_system', tmpResult[5]);
810 assertEqualsString('testListFilesInDirectoryRecursiveWithTermination_WithHidden 6', 'file1.ex1', tmpResult[6]);
811
812 tmpResult.Destroy;
813 end;
814
815
816 Procedure testListFilesInDirectoryRecursiveWithTermination_WithDirectoryInResult;
817 var
818 tmpResult : TStringList;
819 begin
820 tmpResult := TStringList.Create;
821
822 ListFilesInDirectoryRecursiveWithTermination(TEST_PATH + '\unittests\testdir', '*.ex1;ex2', true, false, tmpResult, nil, false);
823
[185]824 assertEqualsInt('testListFilesInDirectoryRecursiveWithTerminationWithDirectoryInResult', 3, tmpResult.count);
825 assertEqualsString('testListFilesInDirectoryRecursiveWithTerminationWithDirectoryInResult', TEST_PATH + '\unittests\testdir' + '\file1.ex1', tmpResult[0]);
826 assertEqualsString('testListFilesInDirectoryRecursiveWithTerminationWithDirectoryInResult', TEST_PATH + '\unittests\testdir' + '\file2.ex1', tmpResult[1]);
827 assertEqualsString('testListFilesInDirectoryRecursiveWithTerminationWithDirectoryInResult', TEST_PATH + '\unittests\testdir' + '\subdir1\file1.ex1', tmpResult[2]);
[97]828
829 tmpResult.Destroy;
830 end;
831
832
[238]833 Procedure testListFilesInDirectoryRecursiveWithTermination_1WithDirectoryInResultWithHidden;
[82]834 var
835 tmpResult : TStringList;
836 begin
837 tmpResult := TStringList.Create;
838
[238]839 ListFilesInDirectoryRecursiveWithTermination(TEST_PATH + '\unittests\testdir', '*.ex1;ex2', true, true, tmpResult, nil, false);
[82]840
[238]841 assertEqualsInt('testListFilesInDirectoryRecursiveWithTerminationWithDirectoryInResultWithHidden', 3, tmpResult.count);
842 assertEqualsString('testListFilesInDirectoryRecursiveWithTerminationWithDirectoryInResultWithHidden', TEST_PATH + '\unittests\testdir' + '\file1.ex1', tmpResult[0]);
843 assertEqualsString('testListFilesInDirectoryRecursiveWithTerminationWithDirectoryInResultWithHidden', TEST_PATH + '\unittests\testdir' + '\file2.ex1', tmpResult[1]);
844 assertEqualsString('testListFilesInDirectoryRecursiveWithTerminationWithDirectoryInResultWithHidden', TEST_PATH + '\unittests\testdir' + '\subdir1\file1.ex1', tmpResult[2]);
[82]845
846 tmpResult.Destroy;
847 end;
848
849
850 // ----------------------------------------------------------
851
852
853 Procedure testParentDir_Empty;
854 var
855 tmpResult : String;
856 begin
857 tmpResult := ParentDir('');
858
859 assertEqualsString('testParentDir_Empty', '', tmpResult);
860 end;
861
862
863 Procedure testParentDir_Root;
864 var
865 tmpResult : String;
866 begin
867 tmpResult := ParentDir('C:\');
868
869 assertEqualsString('testParentDir_Root', '', tmpResult);
870 end;
871
872
873 Procedure testParentDir_UnixRoot;
874 var
875 tmpResult : String;
876 begin
877 tmpResult := ParentDir('\');
878
879 assertEqualsString('testParentDir_UnixRoot', '', tmpResult);
880 end;
881
882
883 Procedure testParentDir;
884 var
885 tmpResult : String;
886 begin
887 tmpResult := ParentDir('\abc\def');
888
889 assertEqualsString('testParentDir', '\abc', tmpResult);
890 end;
891
892
893 Procedure testParentDir_OnlyOne;
894 var
895 tmpResult : String;
896 begin
897 tmpResult := ParentDir('\abc');
898
899 assertEqualsString('testParentDir_OnlyOne', '', tmpResult);
900 end;
901
902
903 Procedure testParentDir_SlashAtEnd;
904 var
905 tmpResult : String;
906 begin
907 tmpResult := ParentDir('\abc\def\');
908
909 assertEqualsString('testParentDir_SlashAtEnd', '\abc', tmpResult);
910 end;
911
912
913 Procedure testParentDir_NoSlashAtStart;
914 var
915 tmpResult : String;
916 begin
917 tmpResult := ParentDir('abc\def\');
918
919 assertEqualsString('testParentDir_NoSlashAtStart', 'abc', tmpResult);
920 end;
921
922
923 Procedure testParentDir_NoSlash;
924 var
925 tmpResult : String;
926 begin
927 tmpResult := ParentDir('abc');
928
929 assertEqualsString('testParentDir_NoSlash', '', tmpResult);
930 end;
931
932
933 Procedure testParentDir_GoToRootDrive;
934 var
935 tmpResult : String;
936 begin
937 tmpResult := ParentDir('c:\abc');
938
939 assertEqualsString('testParentDir_GoToRootDrive', 'c:', tmpResult);
940 end;
941
942
943 // ----------------------------------------------------------
944
945
[190]946 Procedure testMakeDirs_Empty;
947 var
948 tmpResult : String;
949 begin
950 tmpResult := MakeDirs('');
951
952 assertEqualsString('testMakeDirs_Empty', '', tmpResult);
953 end;
954
955
956 Procedure testMakeDirs_Slash;
957 var
958 tmpResult : String;
959 begin
960 tmpResult := MakeDirs('\');
961
962 assertEqualsString('testMakeDirs_Slash', '', tmpResult);
963 end;
964
965
966 Procedure testMakeDirs_Simple;
967 var
968 tmpResult : String;
969 begin
970 RmDir(TEST_PATH + '\unittests\testdir\makedirs');
971
972 tmpResult := MakeDirs(TEST_PATH + '\unittests\testdir' + '\makedirs');
973
974 RmDir(TEST_PATH + '\unittests\testdir\makedirs');
975
976 assertEqualsString('testMakeDirs_Simple', TEST_PATH + '\unittests\testdir\makedirs', tmpResult);
977 end;
978
979
980 Procedure testMakeDirs_Complex;
981 var
982 tmpResult : String;
983 begin
984 RmDir(TEST_PATH + '\unittests\testdir\makedirs\subdir\test');
985 RmDir(TEST_PATH + '\unittests\testdir\makedirs\subdir');
986 RmDir(TEST_PATH + '\unittests\testdir\makedirs');
987
988 tmpResult := MakeDirs(TEST_PATH + '\unittests\testdir' + '\makedirs\subdir\test');
989
990 RmDir(TEST_PATH + '\unittests\testdir\makedirs\subdir\test');
991 RmDir(TEST_PATH + '\unittests\testdir\makedirs\subdir');
992 RmDir(TEST_PATH + '\unittests\testdir\makedirs');
993
994 assertEqualsString('testMakeDirs_Simple', TEST_PATH + '\unittests\testdir\makedirs\subdir\test', tmpResult);
995 end;
996
997
998 // ----------------------------------------------------------
999
1000
[82]1001 Procedure testDirectoryExists_Empty;
1002 var
1003 tmpResult : Boolean;
1004 begin
1005 tmpResult := DirectoryExists('');
1006
1007 assertTrue('testDirectoryExists_Empty', tmpResult);
1008 end;
1009
1010
1011 Procedure testDirectoryExists_DriveOnlyLowercase;
1012 var
1013 tmpResult : Boolean;
1014 begin
1015 tmpResult := DirectoryExists('c:');
1016
1017 assertTrue('testDirectoryExists_DriveOnlyLowercase', tmpResult);
1018 end;
1019
1020
1021 Procedure testDirectoryExists_DriveOnlyUppercase;
1022 var
1023 tmpResult : Boolean;
1024 begin
1025 tmpResult := DirectoryExists('C:');
1026
1027 assertTrue('testDirectoryExists_DriveOnlyUppercase', tmpResult);
1028 end;
1029
1030
1031 Procedure testDirectoryExists_DriveOnlySlashAtEnd;
1032 var
1033 tmpResult : Boolean;
1034 begin
1035 tmpResult := DirectoryExists('C:\');
1036
1037 assertTrue('testDirectoryExists_DriveOnlySlashAtEnd', tmpResult);
1038 end;
1039
1040
1041 Procedure testDirectoryExists_DriveAndPath;
1042 var
1043 tmpResult : Boolean;
1044 begin
1045 tmpResult := DirectoryExists('C:\os2\bitmap');
1046
1047 assertTrue('testDirectoryExists_DriveAndPath', tmpResult);
1048 end;
1049
1050
1051 Procedure testDirectoryExists_DriveAndPathSlashAtEnd;
1052 var
1053 tmpResult : Boolean;
1054 begin
1055 tmpResult := DirectoryExists('C:\os2\bitmap\');
1056
1057 assertTrue('testDirectoryExists_DriveAndPathSlashAtEnd', tmpResult);
1058 end;
1059
1060
1061 Procedure testDirectoryExists_InvalidDrive;
1062 var
1063 tmpResult : Boolean;
1064 begin
1065 tmpResult := DirectoryExists('y:');
1066
1067 assertFalse('testDirectoryExists_InvalidDrive', tmpResult);
1068 end;
1069
1070
1071 Procedure testDirectoryExists_InvalidDriveAndPath;
1072 var
1073 tmpResult : Boolean;
1074 begin
1075 tmpResult := DirectoryExists('y:\test');
1076
1077 assertFalse('testDirectoryExists_InvalidDriveAndPath', tmpResult);
1078 end;
1079
1080
1081 Procedure testDirectoryExists_NotExistent;
1082 var
1083 tmpResult : Boolean;
1084 begin
1085 tmpResult := DirectoryExists('C:\os2\bit\');
1086
1087 assertFalse('testDirectoryExists_NotExistent', tmpResult);
1088 end;
1089
1090
[238]1091 Procedure testDirectoryExists_Archived;
1092 var
1093 tmpResult : Boolean;
1094 begin
1095 tmpResult := DirectoryExists(TEST_PATH + '\unittests\testdir\dir_archived');
1096
1097 assertTrue('testDirectoryExists_Archived', tmpResult);
1098 end;
1099
1100
1101 Procedure testDirectoryExists_Hidden;
1102 var
1103 tmpResult : Boolean;
1104 begin
1105 tmpResult := DirectoryExists(TEST_PATH + '\unittests\testdir\dir_hidden');
1106
1107 assertTrue('testDirectoryExists_Hidden', tmpResult);
1108 end;
1109
1110
1111 Procedure testDirectoryExists_Readonly;
1112 var
1113 tmpResult : Boolean;
1114 begin
1115 tmpResult := DirectoryExists(TEST_PATH + '\unittests\testdir\dir_readonly');
1116
1117 assertTrue('testDirectoryExists_Readonly', tmpResult);
1118 end;
1119
1120
1121 Procedure testDirectoryExists_System;
1122 var
1123 tmpResult : Boolean;
1124 begin
1125 tmpResult := DirectoryExists(TEST_PATH + '\unittests\testdir\dir_system');
1126
1127 assertTrue('testDirectoryExists_System', tmpResult);
1128 end;
1129
1130
[185]1131 // ----------------------------------------------------------
[82]1132
[185]1133
1134 Procedure testDriveLetterToDriveNumber;
1135 var
1136 tmpResult : longint;
1137 begin
1138 tmpResult := DriveLetterToDriveNumber('A');
1139
1140 assertEqualsInt('testDriveLetterToDriveNumber', 1, tmpResult);
1141 end;
1142
1143
1144 Procedure testDriveLetterToDriveNumber_LowerCase;
1145 var
1146 tmpResult : longint;
1147 begin
1148 tmpResult := DriveLetterToDriveNumber('a');
1149
1150 assertEqualsInt('testDriveLetterToDriveNumber_LowerCase', 1, tmpResult);
1151 end;
1152
1153
1154 Procedure testDriveLetterToDriveNumber_Unknown;
1155 var
1156 tmpResult : longint;
1157 begin
1158 tmpResult := DriveLetterToDriveNumber('Ž');
1159
1160 assertEqualsInt('testDriveLetterToDriveNumber_Unknown', 0, tmpResult);
1161 end;
1162
1163
[82]1164 // ----------------------------------------------------------
1165
1166
[185]1167 Procedure testDriveNumberToDriveLetter;
1168 begin
1169 assertEqualsString('testDriveNumberToDriveLetter 1', 'A', DriveNumberToDriveLetter(1));
1170 assertEqualsString('testDriveNumberToDriveLetter 2', 'B', DriveNumberToDriveLetter(2));
1171 end;
1172
1173
1174 // ----------------------------------------------------------
1175
1176
1177 Procedure testGetBootDriveLetter;
1178 var
1179 tmpResult : char;
1180 begin
1181 tmpResult := GetBootDriveLetter;
1182
1183 assertEqualsString('testGetBootDriveLetter', 'C', tmpResult);
1184 end;
1185
1186
1187 // ----------------------------------------------------------
1188
1189
1190 Procedure testFileIsReadOnly_False;
1191 var
1192 tmpResult : boolean;
1193 begin
1194 tmpResult := FileIsReadOnly(GetBootDriveLetter + ':\config.sys');
1195
1196 assertFalse('testFileIsReadOnly_False', tmpResult);
1197 end;
1198
1199
1200 Procedure testFileIsReadOnly_True;
1201 var
1202 tmpResult : boolean;
1203 begin
1204 tmpResult := FileIsReadOnly(GetBootDriveLetter + ':\os2ldr');
1205
1206 assertTrue('testFileIsReadOnly_True', tmpResult);
1207 end;
1208
1209
1210 // ----------------------------------------------------------
1211
1212
[82]1213 Function getFileUtilsUnitTests : TList;
1214 Begin
1215 result := TList.Create;
1216
1217 result.add(@testAddDirectorySeparator_Empty);
1218 result.add(@testAddDirectorySeparator_SingleChar);
1219 result.add(@testAddDirectorySeparator_ManyChars);
1220 result.add(@testAddDirectorySeparator_SlashAtEnd);
1221
1222 result.add(@testAddDirectorySeparatorIfNotEmpty_Empty);
1223 result.add(@testAddDirectorySeparatorIfNotEmpty_SingleChar);
1224 result.add(@testAddDirectorySeparatorIfNotEmpty_ManyChars);
1225 result.add(@testAddDirectorySeparatorIfNotEmpty_SlashAtEnd);
1226
1227 result.add(@testRemoveRightDirectorySeparator_Empty);
1228 result.add(@testRemoveRightDirectorySeparator_WithoutSlash);
1229 result.add(@testRemoveRightDirectorySeparator_WithSlash);
1230
1231 result.add(@testExpandPath_BothEmpty);
1232 result.add(@testExpandPath_PathEmpty);
1233 result.add(@testExpandPath_PathEmptyDirEndsWithSlash);
1234 result.add(@testExpandPath_AbsolutePath);
1235 result.add(@testExpandPath_DriveWithSlash);
1236 result.add(@testExpandPath_DriveWithoutSlash);
1237 result.add(@testExpandPath_RootPathForDrive);
1238 result.add(@testExpandPath_RootDirForDrive);
1239 result.add(@testExpandPath_RootPathWithoutDrive);
1240 result.add(@testExpandPath_RootDirWithoutDrive);
1241 result.add(@testExpandPath_AppendWithSlash);
1242 result.add(@testExpandPath_AppendWithoutSlash);
1243 result.add(@testExpandPath_AppendWithSlashAtEnd);
1244 result.add(@testExpandPath_WithDot);
1245 result.add(@testExpandPath_WithDotAtEnd);
1246 result.add(@testExpandPath_WithDots);
1247 result.add(@testExpandPath_WithDotsAtEnd);
1248 result.add(@testExpandPath_WithDotsInFront);
1249 result.add(@testExpandPath_WithDotsInFrontReachingRoot);
1250 result.add(@testExpandPath_WithDotsInFrontReachingDrive);
1251 result.add(@testExpandPath_WithDotsInFrontLeavingRoot);
1252 result.add(@testExpandPath_WithDotsInFrontLeavingDrive);
1253
1254 result.add(@testGetLogFilesDir);
1255
1256 result.add(@testSearchPath_Found);
1257 result.add(@testSearchPath_FoundMixedCase);
1258 result.add(@testSearchPath_NotFound);
1259 result.add(@testSearchPath_NotExistingEnvironment);
1260
1261 result.add(@testSearchHelpPaths_FoundBookshelf);
1262 result.add(@testSearchHelpPaths_FoundHelp);
1263// result.add(@testSearchHelpPaths_DontSearchInAppDir);
1264 result.add(@testSearchHelpPaths_FoundInAppDir);
1265 result.add(@testSearchHelpPaths_NotFoundInAppDir);
1266
1267 result.add(@testFindDefaultLanguageHelpFile);
1268 result.add(@testFindDefaultLanguageHelpFile_it);
1269 result.add(@testFindDefaultLanguageHelpFile_it_UpperCase);
1270
1271 result.add(@testGetDirsInPath_Unknown);
1272 result.add(@testGetDirsInPath_Help);
1273
1274 result.add(@testListFilesInDirectory_NoFiles);
1275 result.add(@testListFilesInDirectory_EmptyFilter);
1276 result.add(@testListFilesInDirectory_OneFile);
1277 result.add(@testListFilesInDirectory_ManyFiles);
1278 result.add(@testListFilesInDirectory_ManyFilter);
[97]1279 result.add(@testListFilesInDirectoryWithDirectoryInResult_NoFiles);
1280 result.add(@testListFilesInDirectoryWithDirectoryInResult_EmptyFilter);
1281 result.add(@testListFilesInDirectoryWithDirectoryInResult_OneFile);
1282 result.add(@testListFilesInDirectoryWithDirectoryInResult_ManyFiles);
1283 result.add(@testListFilesInDirectoryWithDirectoryInResult_ManyFilter);
[82]1284
1285 result.add(@testListSubDirectories_None);
[238]1286 result.add(@testListSubDirectories_NoneWithHidden);
[82]1287 result.add(@testListSubDirectories_Many);
[238]1288 result.add(@testListSubDirectories_ManyWithHidden);
[82]1289
1290 result.add(@testListFilesInDirectoryRecursiveWithTermination);
[238]1291 result.add(@testListFilesInDirectoryRecursiveWithTermination_WithHidden);
1292 result.add(@testListFilesInDirectoryRecursiveWithTermination_WithDirectoryInResult);
1293 result.add(@testListFilesInDirectoryRecursiveWithTermination_1WithDirectoryInResultWithHidden);
[82]1294
1295 result.add(@testParentDir_Empty);
1296 result.add(@testParentDir_Root);
1297 result.add(@testParentDir_UnixRoot);
1298 result.add(@testParentDir);
1299 result.add(@testParentDir_OnlyOne);
1300 result.add(@testParentDir_SlashAtEnd);
1301 result.add(@testParentDir_NoSlashAtStart);
1302 result.add(@testParentDir_NoSlash);
1303 result.add(@testParentDir_GoToRootDrive);
1304
[190]1305 result.add(@testMakeDirs_Empty);
1306 result.add(@testMakeDirs_Slash);
1307 result.add(@testMakeDirs_Simple);
1308 result.add(@testMakeDirs_Complex);
1309
[82]1310 result.add(@testDirectoryExists_Empty);
1311 result.add(@testDirectoryExists_DriveOnlyLowercase);
1312 result.add(@testDirectoryExists_DriveOnlyUppercase);
1313 result.add(@testDirectoryExists_DriveOnlySlashAtEnd);
1314 result.add(@testDirectoryExists_DriveAndPath);
1315 result.add(@testDirectoryExists_DriveAndPathSlashAtEnd);
1316 result.add(@testDirectoryExists_InvalidDrive);
1317 result.add(@testDirectoryExists_InvalidDriveAndPath);
1318 result.add(@testDirectoryExists_NotExistent);
[185]1319
1320 result.add(@testDriveLetterToDriveNumber);
1321 result.add(@testDriveLetterToDriveNumber_LowerCase);
1322 result.add(@testDriveLetterToDriveNumber_Unknown);
1323
1324 result.add(@testDriveNumberToDriveLetter);
1325
1326 result.add(@testGetBootDriveLetter);
1327
1328 result.add(@testFileIsReadOnly_False);
1329 result.add(@testFileIsReadOnly_True);
[190]1330
[82]1331 end;
1332
1333End.
Note: See TracBrowser for help on using the repository browser.