1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 package org.apache.commons.io.comparator;
18
19 import static org.junit.jupiter.api.Assertions.assertEquals;
20 import static org.junit.jupiter.api.Assertions.assertTrue;
21
22 import java.io.File;
23 import java.util.Comparator;
24
25 import org.junit.jupiter.api.BeforeEach;
26 import org.junit.jupiter.api.Test;
27
28
29
30
31 public class PathFileComparatorTest extends ComparatorAbstractTest {
32
33 @BeforeEach
34 public void setUp() {
35 comparator = (AbstractFileComparator) PathFileComparator.PATH_COMPARATOR;
36 reverse = PathFileComparator.PATH_REVERSE;
37 equalFile1 = new File("foo/file.txt");
38 equalFile2 = new File("foo/file.txt");
39 lessFile = new File("abc/file.txt");
40 moreFile = new File("xyz/file.txt");
41 }
42
43
44 @Test
45 public void testCaseSensitivity() {
46 final File file3 = new File("FOO/file.txt");
47 final Comparator<File> sensitive = new PathFileComparator(null);
48 assertEquals(0, sensitive.compare(equalFile1, equalFile2), "sensitive file1 & file2 = 0");
49 assertTrue(sensitive.compare(equalFile1, file3) > 0, "sensitive file1 & file3 > 0");
50 assertTrue(sensitive.compare(equalFile1, lessFile) > 0, "sensitive file1 & less > 0");
51
52 final Comparator<File> insensitive = PathFileComparator.PATH_INSENSITIVE_COMPARATOR;
53 assertEquals(0, insensitive.compare(equalFile1, equalFile2), "insensitive file1 & file2 = 0");
54 assertEquals(0, insensitive.compare(equalFile1, file3), "insensitive file1 & file3 = 0");
55 assertTrue(insensitive.compare(equalFile1, lessFile) > 0, "insensitive file1 & file4 > 0");
56 assertTrue(insensitive.compare(file3, lessFile) > 0, "insensitive file3 & less > 0");
57 }
58 }