garydgregory commented on a change in pull request #102:
URL: https://github.com/apache/commons-io/pull/102#discussion_r837919105



##########
File path: src/test/java/org/apache/commons/io/FileUtilsTestCase.java
##########
@@ -244,6 +244,19 @@ public void test_openInputStream_notExists() throws 
Exception {
         }
     }
 
+    @Test
+    public void openInputStreamCannotReadFile() throws IOException {
+        final File file = new File(temporaryFolder, "test.txt") {

Review comment:
       Use Mockito for this type of test fixture.

##########
File path: src/test/java/org/apache/commons/io/FileUtilsTestCase.java
##########
@@ -1237,6 +1263,50 @@ public void testCopyFile2WithoutFileDatePreservation() 
throws Exception {
             testFile1.lastModified() != destination.lastModified());*/
     }
 
+    @Test
+    public void copyFileFailedWhenSourceIsDirectory() {
+        final File source = new File(temporaryFolder, 
"testCopyFileWhenSourceIsDirectory");
+        if (!source.exists()) {
+            source.mkdirs();
+        }
+        final File destination = new File(temporaryFolder, "destination");
+
+        assertThrows(IOException.class, () -> FileUtils.copyFile(source, 
destination, false));
+    }
+
+    @Test
+    public void copyFileFailedWhenDestinationParentDirectoryCannotBeCreated() {
+        final File destination = new File(temporaryFolder, 
"destination/drop.txt") {
+            @Override
+            public File getParentFile() {
+                final File parentFile = new 
File(String.valueOf(super.getParentFile())) {
+                    @Override
+                    public boolean mkdirs() {
+                        return false;
+                    }
+                };
+                return parentFile;
+            }
+        };
+
+        assertThrows(IOException.class, () -> FileUtils.copyFile(testFile1, 
destination, false));
+    }
+
+    @Test
+    public void copyFileFailedWhenDestinationExistsButIsReadyOnly() {
+        final File destination = new File(temporaryFolder, 
"destination/drop.txt") {
+            @Override

Review comment:
       Use Mockito for this type of test fixture.

##########
File path: src/test/java/org/apache/commons/io/FileUtilsTestCase.java
##########
@@ -2507,6 +2597,21 @@ public void testDeleteDirectoryWithNonDirectory() throws 
Exception {
         }
     }
 
+    @Test
+    public void deleteDirectoryFailed() {
+        File directoryToDelete = new File(temporaryFolder, 
"directoryToDelete") {

Review comment:
       Use final where posssible,
   Use Mockito for this type of test fixture.

##########
File path: src/test/java/org/apache/commons/io/FileUtilsTestCase.java
##########
@@ -321,6 +334,19 @@ public void test_openOutputStream_notExistsCannotCreate() 
throws Exception {
         }
     }
 
+    @Test
+    public void openOutputStreamCannotWriteFile() throws Exception {
+        final File file = new File(temporaryFolder, "test.txt") {

Review comment:
       Use Mockito for this type of test fixture.

##########
File path: src/test/java/org/apache/commons/io/FileUtilsTestCase.java
##########
@@ -1237,6 +1263,50 @@ public void testCopyFile2WithoutFileDatePreservation() 
throws Exception {
             testFile1.lastModified() != destination.lastModified());*/
     }
 
+    @Test
+    public void copyFileFailedWhenSourceIsDirectory() {
+        final File source = new File(temporaryFolder, 
"testCopyFileWhenSourceIsDirectory");
+        if (!source.exists()) {
+            source.mkdirs();
+        }
+        final File destination = new File(temporaryFolder, "destination");
+
+        assertThrows(IOException.class, () -> FileUtils.copyFile(source, 
destination, false));
+    }
+
+    @Test
+    public void copyFileFailedWhenDestinationParentDirectoryCannotBeCreated() {
+        final File destination = new File(temporaryFolder, 
"destination/drop.txt") {
+            @Override
+            public File getParentFile() {
+                final File parentFile = new 
File(String.valueOf(super.getParentFile())) {
+                    @Override

Review comment:
       Use Mockito for this type of test fixture.




-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


Reply via email to