Skip to content

Commit 318c919

Browse files
[IO-745] Fix FilenameUtilsTest Adding and modifying tests to match the correct logic
1 parent ba525f1 commit 318c919

1 file changed

Lines changed: 18 additions & 15 deletions

File tree

src/test/java/org/apache/commons/io/FilenameUtilsTest.java

Lines changed: 18 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -70,31 +70,31 @@ public void setUp() throws Exception {
7070
+ " as the parent directory does not exist");
7171
}
7272
try (BufferedOutputStream output3 =
73-
new BufferedOutputStream(Files.newOutputStream(testFile1))) {
73+
new BufferedOutputStream(Files.newOutputStream(testFile1))) {
7474
TestUtils.generateTestData(output3, testFile1Size);
7575
}
7676
if (!Files.exists(testFile2.getParent())) {
7777
throw new IOException("Cannot create file " + testFile2
7878
+ " as the parent directory does not exist");
7979
}
8080
try (BufferedOutputStream output2 =
81-
new BufferedOutputStream(Files.newOutputStream(testFile2))) {
81+
new BufferedOutputStream(Files.newOutputStream(testFile2))) {
8282
TestUtils.generateTestData(output2, testFile2Size);
8383
}
8484
if (!Files.exists(testFile1.getParent())) {
8585
throw new IOException("Cannot create file " + testFile1
8686
+ " as the parent directory does not exist");
8787
}
8888
try (BufferedOutputStream output1 =
89-
new BufferedOutputStream(Files.newOutputStream(testFile1))) {
89+
new BufferedOutputStream(Files.newOutputStream(testFile1))) {
9090
TestUtils.generateTestData(output1, testFile1Size);
9191
}
9292
if (!Files.exists(testFile2.getParent())) {
9393
throw new IOException("Cannot create file " + testFile2
9494
+ " as the parent directory does not exist");
9595
}
9696
try (BufferedOutputStream output =
97-
new BufferedOutputStream(Files.newOutputStream(testFile2))) {
97+
new BufferedOutputStream(Files.newOutputStream(testFile2))) {
9898
TestUtils.generateTestData(output, testFile2Size);
9999
}
100100
}
@@ -192,7 +192,6 @@ void testEqualsNormalized() {
192192
void testEqualsNormalizedError_IO_128() {
193193
assertFalse(FilenameUtils.equalsNormalizedOnSystem("//file.txt", "file.txt"));
194194
assertFalse(FilenameUtils.equalsNormalizedOnSystem("file.txt", "//file.txt"));
195-
assertFalse(FilenameUtils.equalsNormalizedOnSystem("//file.txt", "//file.txt"));
196195
}
197196

198197
@Test
@@ -275,7 +274,6 @@ void testGetFullPath() {
275274
assertNull(FilenameUtils.getFullPath("1:"));
276275
assertNull(FilenameUtils.getFullPath("1:a"));
277276
assertNull(FilenameUtils.getFullPath("///a/b/c.txt"));
278-
assertNull(FilenameUtils.getFullPath("//a"));
279277

280278
assertEquals("", FilenameUtils.getFullPath(""));
281279

@@ -288,6 +286,7 @@ void testGetFullPath() {
288286

289287
assertEquals("C:/", FilenameUtils.getFullPath("C:/"));
290288
assertEquals("//server/", FilenameUtils.getFullPath("//server/"));
289+
assertEquals("//server", FilenameUtils.getFullPath("//server"));
291290
assertEquals("~/", FilenameUtils.getFullPath("~"));
292291
assertEquals("~/", FilenameUtils.getFullPath("~/"));
293292
assertEquals("~user/", FilenameUtils.getFullPath("~user"));
@@ -317,7 +316,6 @@ void testGetFullPathNoEndSeparator() {
317316
assertNull(FilenameUtils.getFullPathNoEndSeparator("1:"));
318317
assertNull(FilenameUtils.getFullPathNoEndSeparator("1:a"));
319318
assertNull(FilenameUtils.getFullPathNoEndSeparator("///a/b/c.txt"));
320-
assertNull(FilenameUtils.getFullPathNoEndSeparator("//a"));
321319

322320
assertEquals("", FilenameUtils.getFullPathNoEndSeparator(""));
323321

@@ -330,6 +328,7 @@ void testGetFullPathNoEndSeparator() {
330328

331329
assertEquals("C:/", FilenameUtils.getFullPathNoEndSeparator("C:/"));
332330
assertEquals("//server/", FilenameUtils.getFullPathNoEndSeparator("//server/"));
331+
assertEquals("//server", FilenameUtils.getFullPathNoEndSeparator("//server"));
333332
assertEquals("~", FilenameUtils.getFullPathNoEndSeparator("~"));
334333
assertEquals("~/", FilenameUtils.getFullPathNoEndSeparator("~/"));
335334
assertEquals("~user", FilenameUtils.getFullPathNoEndSeparator("~user"));
@@ -408,12 +407,12 @@ void testGetPath() {
408407
assertNull(FilenameUtils.getPath("1:"));
409408
assertNull(FilenameUtils.getPath("1:a"));
410409
assertNull(FilenameUtils.getPath("///a/b/c.txt"));
411-
assertNull(FilenameUtils.getPath("//a"));
412410

413411
assertEquals("", FilenameUtils.getPath(""));
414412
assertEquals("", FilenameUtils.getPath(DRIVE_C));
415413
assertEquals("", FilenameUtils.getPath("C:/"));
416414
assertEquals("", FilenameUtils.getPath("//server/"));
415+
assertEquals("",FilenameUtils.getPath("//server"));
417416
assertEquals("", FilenameUtils.getPath("~"));
418417
assertEquals("", FilenameUtils.getPath("~/"));
419418
assertEquals("", FilenameUtils.getPath("~user"));
@@ -450,12 +449,12 @@ void testGetPathNoEndSeparator() {
450449
assertNull(FilenameUtils.getPathNoEndSeparator("1:"));
451450
assertNull(FilenameUtils.getPathNoEndSeparator("1:a"));
452451
assertNull(FilenameUtils.getPathNoEndSeparator("///a/b/c.txt"));
453-
assertNull(FilenameUtils.getPathNoEndSeparator("//a"));
454452

455453
assertEquals("", FilenameUtils.getPathNoEndSeparator(""));
456454
assertEquals("", FilenameUtils.getPathNoEndSeparator(DRIVE_C));
457455
assertEquals("", FilenameUtils.getPathNoEndSeparator("C:/"));
458456
assertEquals("", FilenameUtils.getPathNoEndSeparator("//server/"));
457+
assertEquals("",FilenameUtils.getPathNoEndSeparator("//server"));
459458
assertEquals("", FilenameUtils.getPathNoEndSeparator("~"));
460459
assertEquals("", FilenameUtils.getPathNoEndSeparator("~/"));
461460
assertEquals("", FilenameUtils.getPathNoEndSeparator("~user"));
@@ -484,7 +483,6 @@ void testGetPrefix() {
484483
assertNull(FilenameUtils.getPrefix("1:"));
485484
assertNull(FilenameUtils.getPrefix("1:a"));
486485
assertNull(FilenameUtils.getPrefix("\\\\\\a\\b\\c.txt"));
487-
assertNull(FilenameUtils.getPrefix("\\\\a"));
488486

489487
assertEquals("", FilenameUtils.getPrefix(""));
490488
assertEquals("\\", FilenameUtils.getPrefix("\\"));
@@ -498,6 +496,7 @@ void testGetPrefix() {
498496

499497
assertEquals("C:\\", FilenameUtils.getPrefix("C:\\"));
500498
assertEquals("//server/", FilenameUtils.getPrefix("//server/"));
499+
assertEquals("//server", FilenameUtils.getPrefix("//server"));
501500
assertEquals("~/", FilenameUtils.getPrefix("~"));
502501
assertEquals("~/", FilenameUtils.getPrefix("~/"));
503502
assertEquals("~user/", FilenameUtils.getPrefix("~user"));
@@ -507,6 +506,7 @@ void testGetPrefix() {
507506
assertEquals("\\", FilenameUtils.getPrefix("\\a\\b\\c.txt"));
508507
assertEquals("C:\\", FilenameUtils.getPrefix("C:\\a\\b\\c.txt"));
509508
assertEquals("\\\\server\\", FilenameUtils.getPrefix("\\\\server\\a\\b\\c.txt"));
509+
assertEquals("\\\\a", FilenameUtils.getPrefix("\\\\a"));
510510

511511
assertEquals("", FilenameUtils.getPrefix("a/b/c.txt"));
512512
assertEquals("/", FilenameUtils.getPrefix("/a/b/c.txt"));
@@ -534,7 +534,6 @@ void testGetPrefixLength() {
534534
assertEquals(-1, FilenameUtils.getPrefixLength("1:"));
535535
assertEquals(-1, FilenameUtils.getPrefixLength("1:a"));
536536
assertEquals(-1, FilenameUtils.getPrefixLength("\\\\\\a\\b\\c.txt"));
537-
assertEquals(-1, FilenameUtils.getPrefixLength("\\\\a"));
538537

539538
assertEquals(0, FilenameUtils.getPrefixLength(""));
540539
assertEquals(1, FilenameUtils.getPrefixLength("\\"));
@@ -548,6 +547,7 @@ void testGetPrefixLength() {
548547

549548
assertEquals(3, FilenameUtils.getPrefixLength("C:\\"));
550549
assertEquals(9, FilenameUtils.getPrefixLength("//server/"));
550+
assertEquals(8, FilenameUtils.getPrefixLength("//server"));
551551
assertEquals(2, FilenameUtils.getPrefixLength("~"));
552552
assertEquals(2, FilenameUtils.getPrefixLength("~/"));
553553
assertEquals(6, FilenameUtils.getPrefixLength("~user"));
@@ -558,6 +558,7 @@ void testGetPrefixLength() {
558558
assertEquals(2, FilenameUtils.getPrefixLength("C:a\\b\\c.txt"));
559559
assertEquals(3, FilenameUtils.getPrefixLength("C:\\a\\b\\c.txt"));
560560
assertEquals(9, FilenameUtils.getPrefixLength("\\\\server\\a\\b\\c.txt"));
561+
assertEquals(3, FilenameUtils.getPrefixLength( "\\\\a"));
561562

562563
assertEquals(0, FilenameUtils.getPrefixLength("a/b/c.txt"));
563564
assertEquals(1, FilenameUtils.getPrefixLength("/a/b/c.txt"));
@@ -775,8 +776,8 @@ void testNormalize() {
775776
assertNull(FilenameUtils.normalize("1:"));
776777
assertNull(FilenameUtils.normalize("1:a"));
777778
assertNull(FilenameUtils.normalize("\\\\\\a\\b\\c.txt"));
778-
assertNull(FilenameUtils.normalize("\\\\a"));
779779

780+
assertEquals( SEP + SEP + "a", FilenameUtils.normalize("\\\\a"));
780781
assertEquals("a" + SEP + "b" + SEP + "c.txt", FilenameUtils.normalize("a\\b/c.txt"));
781782
assertEquals("" + SEP + "a" + SEP + "b" + SEP + "c.txt", FilenameUtils.normalize("\\a\\b/c.txt"));
782783
assertEquals(DRIVE_C + SEP + "a" + SEP + "b" + SEP + "c.txt", FilenameUtils.normalize("C:\\a\\b/c.txt"));
@@ -915,13 +916,14 @@ void testNormalize() {
915916
assertNull(FilenameUtils.normalize("//server/../a"));
916917
assertNull(FilenameUtils.normalize("//server/.."));
917918
assertEquals(SEP + SEP + "server" + SEP + "", FilenameUtils.normalize("//server/"));
919+
assertEquals( SEP + SEP + "server", FilenameUtils.normalize("//server"));
918920

919921
assertEquals(SEP + SEP + "127.0.0.1" + SEP + "a" + SEP + "b" + SEP + "c.txt", FilenameUtils.normalize("\\\\127.0.0.1\\a\\b\\c.txt"));
920922
assertEquals(SEP + SEP + "::1" + SEP + "a" + SEP + "b" + SEP + "c.txt", FilenameUtils.normalize("\\\\::1\\a\\b\\c.txt"));
921923
assertEquals(SEP + SEP + "1::" + SEP + "a" + SEP + "b" + SEP + "c.txt", FilenameUtils.normalize("\\\\1::\\a\\b\\c.txt"));
922924
assertEquals(SEP + SEP + "server.example.org" + SEP + "a" + SEP + "b" + SEP + "c.txt", FilenameUtils.normalize("\\\\server.example.org\\a\\b\\c.txt"));
923925
assertEquals(SEP + SEP + "server.sub.example.org" + SEP + "a" + SEP + "b" + SEP + "c.txt",
924-
FilenameUtils.normalize("\\\\server.sub.example.org\\a\\b\\c.txt"));
926+
FilenameUtils.normalize("\\\\server.sub.example.org\\a\\b\\c.txt"));
925927
assertEquals(SEP + SEP + "server." + SEP + "a" + SEP + "b" + SEP + "c.txt", FilenameUtils.normalize("\\\\server.\\a\\b\\c.txt"));
926928
assertEquals(SEP + SEP + "1::127.0.0.1" + SEP + "a" + SEP + "b" + SEP + "c.txt", FilenameUtils.normalize("\\\\1::127.0.0.1\\a\\b\\c.txt"));
927929

@@ -986,8 +988,8 @@ void testNormalizeNoEndSeparator() {
986988
assertNull(FilenameUtils.normalizeNoEndSeparator("1:"));
987989
assertNull(FilenameUtils.normalizeNoEndSeparator("1:a"));
988990
assertNull(FilenameUtils.normalizeNoEndSeparator("\\\\\\a\\b\\c.txt"));
989-
assertNull(FilenameUtils.normalizeNoEndSeparator("\\\\a"));
990991

992+
assertEquals( SEP + SEP + "a", FilenameUtils.normalizeNoEndSeparator("\\\\a"));
991993
assertEquals("a" + SEP + "b" + SEP + "c.txt", FilenameUtils.normalizeNoEndSeparator("a\\b/c.txt"));
992994
assertEquals("" + SEP + "a" + SEP + "b" + SEP + "c.txt", FilenameUtils.normalizeNoEndSeparator("\\a\\b/c.txt"));
993995
assertEquals(DRIVE_C + SEP + "a" + SEP + "b" + SEP + "c.txt", FilenameUtils.normalizeNoEndSeparator("C:\\a\\b/c.txt"));
@@ -1127,6 +1129,7 @@ void testNormalizeNoEndSeparator() {
11271129
assertNull(FilenameUtils.normalizeNoEndSeparator("//server/../a"));
11281130
assertNull(FilenameUtils.normalizeNoEndSeparator("//server/.."));
11291131
assertEquals(SEP + SEP + "server" + SEP + "", FilenameUtils.normalizeNoEndSeparator("//server/"));
1132+
assertEquals( SEP + SEP + "server", FilenameUtils.normalizeNoEndSeparator("//server"));
11301133
}
11311134

11321135
@Test
@@ -1208,4 +1211,4 @@ void testSeparatorsToWindows() {
12081211
assertEquals("\\a\\b\\c", FilenameUtils.separatorsToWindows("/a/b/c"));
12091212
assertEquals("D:\\a\\b\\c", FilenameUtils.separatorsToWindows("D:/a/b/c"));
12101213
}
1211-
}
1214+
}

0 commit comments

Comments
 (0)