|
1 | 1 | package com.baeldung.listfiles; |
2 | 2 |
|
3 | | -import static org.junit.Assert.assertEquals; |
| 3 | +import org.junit.Test; |
4 | 4 |
|
5 | 5 | import java.io.IOException; |
| 6 | +import java.util.Collections; |
6 | 7 | import java.util.HashSet; |
7 | 8 | import java.util.Set; |
8 | 9 |
|
9 | | -import org.junit.Test; |
10 | | - |
11 | | -import com.baeldung.listfiles.ListFiles; |
| 10 | +import static org.assertj.core.api.AssertionsForClassTypes.assertThat; |
| 11 | +import static org.junit.Assert.assertEquals; |
| 12 | +import static org.junit.jupiter.api.Assertions.assertThrows; |
12 | 13 |
|
13 | 14 | public class ListFilesUnitTest { |
14 | 15 |
|
15 | | - private ListFiles listFiles = new ListFiles(); |
16 | | - private String DIRECTORY = "src/test/resources/listFilesUnitTestFolder"; |
17 | | - private static final int DEPTH = 1; |
18 | | - private Set<String> EXPECTED_FILE_LIST = new HashSet<String>() { |
| 16 | + private static final String VALID_DIRECTORY = "src/test/resources/listFilesUnitTestFolder"; |
| 17 | + private static final String INVALID_DIRECTORY = "src/test/resources/thisDirectoryDoesNotExist"; |
| 18 | + private static final Set<String> EXPECTED_FILE_SET = new HashSet<String>() { |
19 | 19 | { |
20 | 20 | add("test.xml"); |
21 | 21 | add("employee.json"); |
22 | 22 | add("students.json"); |
23 | 23 | add("country.txt"); |
24 | 24 | } |
25 | 25 | }; |
| 26 | + private static final int DEPTH = 1; |
| 27 | + private final ListFiles listFiles = new ListFiles(); |
| 28 | + |
| 29 | + @Test |
| 30 | + public void givenAValidDirectoryWhenUsingJavaIOThenReturnSetOfFileNames() { |
| 31 | + assertThat(listFiles.listFilesUsingJavaIO(VALID_DIRECTORY)) |
| 32 | + .isEqualTo(EXPECTED_FILE_SET); |
| 33 | + } |
| 34 | + |
| 35 | + @Test |
| 36 | + public void givenAInvalidValidDirectoryWhenUsingJavaIOThenThrowsNullPointerExceptino() { |
| 37 | + assertThrows(NullPointerException.class, |
| 38 | + () -> listFiles.listFilesUsingJavaIO(INVALID_DIRECTORY)); |
| 39 | + } |
26 | 40 |
|
27 | 41 | @Test |
28 | | - public void givenDir_whenUsingJAVAIO_thenListAllFiles() { |
29 | | - assertEquals(EXPECTED_FILE_LIST, listFiles.listFilesUsingJavaIO(DIRECTORY)); |
| 42 | + public void givenAValidDirectoryWhenUsingFilesListThenReturnSetOfFileNames() throws IOException { |
| 43 | + assertThat(listFiles.listFilesUsingFilesList(VALID_DIRECTORY)) |
| 44 | + .isEqualTo(EXPECTED_FILE_SET); |
30 | 45 | } |
31 | 46 |
|
32 | 47 | @Test |
33 | | - public void givenDir_whenUsingFilesList_thenListAllFiles() throws IOException { |
34 | | - assertEquals(EXPECTED_FILE_LIST, listFiles.listFilesUsingFilesList(DIRECTORY)); |
| 48 | + public void givenAValidDirectoryWhenUsingFilesWalkWithDepth1ThenReturnSetOfFileNames() throws IOException { |
| 49 | + assertThat(listFiles.listFilesUsingFileWalk(VALID_DIRECTORY, DEPTH)) |
| 50 | + .isEqualTo(EXPECTED_FILE_SET); |
35 | 51 | } |
36 | 52 |
|
37 | 53 | @Test |
38 | | - public void givenDir_whenWalkingTree_thenListAllFiles() throws IOException { |
39 | | - assertEquals(EXPECTED_FILE_LIST, listFiles.listFilesUsingFileWalk(DIRECTORY,DEPTH)); |
| 54 | + public void givenAValidDirectoryWhenUsingFilesWalkFileTreeThenReturnSetOfFileNames() throws IOException { |
| 55 | + assertThat(listFiles.listFilesUsingFileWalkAndVisitor(VALID_DIRECTORY)) |
| 56 | + .isEqualTo(EXPECTED_FILE_SET); |
40 | 57 | } |
41 | 58 |
|
42 | 59 | @Test |
43 | | - public void givenDir_whenWalkingTreeWithVisitor_thenListAllFiles() throws IOException { |
44 | | - assertEquals(EXPECTED_FILE_LIST, listFiles.listFilesUsingFileWalkAndVisitor(DIRECTORY)); |
| 60 | + public void givenAValidDirectoryWhenUsingDirectoryStreamThenReturnSetOfFileNames() throws IOException { |
| 61 | + assertThat(listFiles.listFilesUsingDirectoryStream(VALID_DIRECTORY)) |
| 62 | + .isEqualTo(EXPECTED_FILE_SET); |
45 | 63 | } |
46 | 64 |
|
47 | 65 | @Test |
48 | | - public void givenDir_whenUsingDirectoryStream_thenListAllFiles() throws IOException { |
49 | | - assertEquals(EXPECTED_FILE_LIST, listFiles.listFilesUsingDirectoryStream(DIRECTORY)); |
| 66 | + public void givenAValidFileWhenUsingFilesWalkWithDepth1ThenReturnSetOfTheSameFile() throws IOException { |
| 67 | + Set<String> expectedFileSet = Collections.singleton("test.xml"); |
| 68 | + String filePathString = "src/test/resources/listFilesUnitTestFolder/test.xml"; |
| 69 | + assertEquals(expectedFileSet, listFiles.listFilesUsingFileWalk(filePathString, DEPTH)); |
50 | 70 | } |
51 | 71 | } |
0 commit comments