You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@commons.apache.org by kr...@apache.org on 2015/12/09 20:50:31 UTC

svn commit: r1718944 [2/6] - in /commons/proper/io/trunk/src/test/java/org/apache/commons/io: ./ comparator/ filefilter/ input/ monitor/ output/ testtools/

Modified: commons/proper/io/trunk/src/test/java/org/apache/commons/io/FileUtilsTestCase.java
URL: http://svn.apache.org/viewvc/commons/proper/io/trunk/src/test/java/org/apache/commons/io/FileUtilsTestCase.java?rev=1718944&r1=1718943&r2=1718944&view=diff
==============================================================================
--- commons/proper/io/trunk/src/test/java/org/apache/commons/io/FileUtilsTestCase.java (original)
+++ commons/proper/io/trunk/src/test/java/org/apache/commons/io/FileUtilsTestCase.java Wed Dec  9 19:50:30 2015
@@ -16,32 +16,27 @@
  */
 package org.apache.commons.io;
 
-import java.io.ByteArrayOutputStream;
-import java.io.File;
-import java.io.FileInputStream;
-import java.io.FileNotFoundException;
-import java.io.FileOutputStream;
-import java.io.IOException;
-import java.io.OutputStream;
+import org.apache.commons.io.filefilter.NameFileFilter;
+import org.apache.commons.io.filefilter.WildcardFileFilter;
+import org.apache.commons.io.testtools.FileBasedTestCase;
+import org.apache.commons.io.testtools.TestUtils;
+import org.junit.*;
+
+import java.io.*;
 import java.math.BigInteger;
 import java.net.URL;
 import java.nio.charset.Charset;
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.Collection;
-import java.util.Date;
-import java.util.GregorianCalendar;
-import java.util.HashMap;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Map;
+import java.util.*;
 import java.util.zip.CRC32;
 import java.util.zip.Checksum;
 
-import org.apache.commons.io.filefilter.NameFileFilter;
-import org.apache.commons.io.filefilter.WildcardFileFilter;
-import org.apache.commons.io.testtools.FileBasedTestCase;
-import org.junit.Assert;
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertFalse;
+import static org.junit.Assert.assertNotNull;
+import static org.junit.Assert.assertNull;
+import static org.junit.Assert.assertSame;
+import static org.junit.Assert.assertTrue;
+import static org.junit.Assert.fail;
 
 /**
  * This is used to test FileUtils for correctness.
@@ -49,7 +44,7 @@ import org.junit.Assert;
  * @version $Id$
  * @see FileUtils
  */
-@SuppressWarnings("deprecation") // unit tests include tests of many deprecated methods
+@SuppressWarnings({"deprecation", "ResultOfMethodCallIgnored"}) // unit tests include tests of many deprecated methods
 public class FileUtilsTestCase extends FileBasedTestCase {
 
     // Test data
@@ -85,9 +80,7 @@ public class FileUtilsTestCase extends F
     private final int testFile1Size;
     private final int testFile2Size;
 
-    public FileUtilsTestCase(final String name) {
-        super(name);
-
+    public FileUtilsTestCase() {
         testFile1 = new File(getTestDirectory(), "file1-test.txt");
         testFile2 = new File(getTestDirectory(), "file1a-test.txt");
 
@@ -95,23 +88,68 @@ public class FileUtilsTestCase extends F
         testFile2Size = (int) testFile2.length();
     }
 
-    @Override
-    protected void setUp() throws Exception {
+    @Before
+    public void setUp() throws Exception {
         getTestDirectory().mkdirs();
-        createFile(testFile1, testFile1Size);
-        createFile(testFile2, testFile2Size);
+        if (!testFile1.getParentFile().exists()) {
+            throw new IOException("Cannot create file " + testFile1
+                    + " as the parent directory does not exist");
+        }
+        final BufferedOutputStream output3 =
+                new BufferedOutputStream(new FileOutputStream(testFile1));
+        try {
+            TestUtils.generateTestData(output3, (long) testFile1Size);
+        } finally {
+            IOUtils.closeQuietly(output3);
+        }
+        if (!testFile2.getParentFile().exists()) {
+            throw new IOException("Cannot create file " + testFile2
+                    + " as the parent directory does not exist");
+        }
+        final BufferedOutputStream output2 =
+                new BufferedOutputStream(new FileOutputStream(testFile2));
+        try {
+            TestUtils.generateTestData(output2, (long) testFile2Size);
+        } finally {
+            IOUtils.closeQuietly(output2);
+        }
         FileUtils.deleteDirectory(getTestDirectory());
         getTestDirectory().mkdirs();
-        createFile(testFile1, testFile1Size);
-        createFile(testFile2, testFile2Size);
+        if (!testFile1.getParentFile().exists()) {
+            throw new IOException("Cannot create file " + testFile1
+                    + " as the parent directory does not exist");
+        }
+        final BufferedOutputStream output1 =
+                new BufferedOutputStream(new FileOutputStream(testFile1));
+        try {
+            TestUtils.generateTestData(output1, (long) testFile1Size);
+        } finally {
+            IOUtils.closeQuietly(output1);
+        }
+        if (!testFile2.getParentFile().exists()) {
+            throw new IOException("Cannot create file " + testFile2
+                    + " as the parent directory does not exist");
+        }
+        final BufferedOutputStream output =
+                new BufferedOutputStream(new FileOutputStream(testFile2));
+        try {
+            TestUtils.generateTestData(output, (long) testFile2Size);
+        } finally {
+            IOUtils.closeQuietly(output);
+        }
     }
 
-    @Override
-    protected void tearDown() throws Exception {
+    @After
+    public void tearDown() throws Exception {
         FileUtils.deleteDirectory(getTestDirectory());
     }
 
+    private String getName() {
+        return this.getClass().getSimpleName();
+    }
+
     //-----------------------------------------------------------------------
+    @Test
     public void testGetFile() {
         final File expected_A = new File("src");
         final File expected_B = new File(expected_A, "main");
@@ -127,6 +165,7 @@ public class FileUtilsTestCase extends F
         }
     }
 
+    @Test
     public void testGetFile_Parent() {
         final File parent = new File("parent");
         final File expected_A = new File(parent, "src");
@@ -149,30 +188,35 @@ public class FileUtilsTestCase extends F
         }
     }
 
+    @Test
     public void testGetTempDirectoryPath() {
         assertEquals(System.getProperty("java.io.tmpdir"),
                 FileUtils.getTempDirectoryPath());
     }
 
+    @Test
     public void testGetTempDirectory() {
         final File tempDirectory = new File(System.getProperty("java.io.tmpdir"));
         assertEquals(tempDirectory, FileUtils.getTempDirectory());
     }
 
+    @Test
     public void testGetUserDirectoryPath() {
         assertEquals(System.getProperty("user.home"),
                 FileUtils.getUserDirectoryPath());
     }
 
+    @Test
     public void testGetUserDirectory() {
         final File userDirectory = new File(System.getProperty("user.home"));
         assertEquals(userDirectory, FileUtils.getUserDirectory());
     }
 
     //-----------------------------------------------------------------------
+    @Test
     public void test_openInputStream_exists() throws Exception {
         final File file = new File(getTestDirectory(), "test.txt");
-        createLineBasedFile(file, new String[]{"Hello"});
+        TestUtils.createLineBasedFile(file, new String[]{"Hello"});
         FileInputStream in = null;
         try {
             in = FileUtils.openInputStream(file);
@@ -182,6 +226,7 @@ public class FileUtilsTestCase extends F
         }
     }
 
+    @Test
     public void test_openInputStream_existsButIsDirectory() throws Exception {
         final File directory = new File(getTestDirectory(), "subdir");
         directory.mkdirs();
@@ -196,6 +241,7 @@ public class FileUtilsTestCase extends F
         }
     }
 
+    @Test
     public void test_openInputStream_notExists() throws Exception {
         final File directory = new File(getTestDirectory(), "test.txt");
         FileInputStream in = null;
@@ -215,7 +261,7 @@ public class FileUtilsTestCase extends F
         assertNull(file.getParentFile());
         try {
             if (createFile) {
-                createLineBasedFile(file, new String[]{"Hello"});
+                TestUtils.createLineBasedFile(file, new String[]{"Hello"});
             }
             FileOutputStream out = null;
             try {
@@ -226,24 +272,27 @@ public class FileUtilsTestCase extends F
             }
             assertTrue(file.exists());
         } finally {
-            if (file.delete() == false) {
+            if (!file.delete()) {
                 file.deleteOnExit();
             }
         }
     }
 
+    @Test
     public void test_openOutputStream_noParentCreateFile() throws Exception {
         openOutputStream_noParent(true);
     }
 
+    @Test
     public void test_openOutputStream_noParentNoFile() throws Exception {
         openOutputStream_noParent(false);
     }
 
 
+    @Test
     public void test_openOutputStream_exists() throws Exception {
         final File file = new File(getTestDirectory(), "test.txt");
-        createLineBasedFile(file, new String[]{"Hello"});
+        TestUtils.createLineBasedFile(file, new String[]{"Hello"});
         FileOutputStream out = null;
         try {
             out = FileUtils.openOutputStream(file);
@@ -254,6 +303,7 @@ public class FileUtilsTestCase extends F
         assertTrue(file.exists());
     }
 
+    @Test
     public void test_openOutputStream_existsButIsDirectory() throws Exception {
         final File directory = new File(getTestDirectory(), "subdir");
         directory.mkdirs();
@@ -268,6 +318,7 @@ public class FileUtilsTestCase extends F
         }
     }
 
+    @Test
     public void test_openOutputStream_notExists() throws Exception {
         final File file = new File(getTestDirectory(), "a/test.txt");
         FileOutputStream out = null;
@@ -280,6 +331,7 @@ public class FileUtilsTestCase extends F
         assertTrue(file.exists());
     }
 
+    @Test
     public void test_openOutputStream_notExistsCannotCreate() throws Exception {
         // according to Wikipedia, most filing systems have a 256 limit on filename
         final String longStr =
@@ -303,6 +355,7 @@ public class FileUtilsTestCase extends F
 
     //-----------------------------------------------------------------------
     // byteCountToDisplaySize
+    @Test
     public void testByteCountToDisplaySizeBigInteger() {
         final BigInteger b1023 = BigInteger.valueOf(1023);
         final BigInteger b1025 = BigInteger.valueOf(1025);
@@ -336,6 +389,8 @@ public class FileUtilsTestCase extends F
         assertEquals(FileUtils.byteCountToDisplaySize(BigInteger.valueOf(Integer.MAX_VALUE)), "1 GB");
     }
 
+    @SuppressWarnings("NumericOverflow")
+    @Test
     public void testByteCountToDisplaySizeLong() {
         assertEquals(FileUtils.byteCountToDisplaySize(0), "0 bytes");
         assertEquals(FileUtils.byteCountToDisplaySize(1), "1 bytes");
@@ -361,23 +416,27 @@ public class FileUtilsTestCase extends F
     }
 
     //-----------------------------------------------------------------------
+    @Test
     public void testToFile1() throws Exception {
         final URL url = new URL("file", null, "a/b/c/file.txt");
         final File file = FileUtils.toFile(url);
         assertTrue(file.toString().contains("file.txt"));
     }
 
+    @Test
     public void testToFile2() throws Exception {
         final URL url = new URL("file", null, "a/b/c/file%20n%61me%2520.tx%74");
         final File file = FileUtils.toFile(url);
         assertTrue(file.toString().contains("file name%20.txt"));
     }
 
+    @Test
     public void testToFile3() throws Exception {
         assertEquals(null, FileUtils.toFile(null));
         assertEquals(null, FileUtils.toFile(new URL("http://jakarta.apache.org")));
     }
 
+    @Test
     public void testToFile4() throws Exception {
         final URL url = new URL("file", null, "a/b/c/file%%20%me.txt%");
         final File file = FileUtils.toFile(url);
@@ -385,18 +444,21 @@ public class FileUtilsTestCase extends F
     }
 
     /* IO-252 */
+    @Test
     public void testToFile5() throws Exception {
         final URL url = new URL("file", null, "both%20are%20100%20%25%20true");
         final File file = FileUtils.toFile(url);
         assertEquals("both are 100 % true", file.toString());
     }
 
+    @Test
     public void testToFileUtf8() throws Exception {
         final URL url = new URL("file", null, "/home/%C3%A4%C3%B6%C3%BC%C3%9F");
         final File file = FileUtils.toFile(url);
         assertTrue(file.toString().contains("\u00E4\u00F6\u00FC\u00DF"));
     }
 
+    @Test
     public void testDecodeUrl() {
         assertEquals("", FileUtils.decodeUrl(""));
         assertEquals("foo", FileUtils.decodeUrl("foo"));
@@ -407,6 +469,7 @@ public class FileUtilsTestCase extends F
                 .decodeUrl("jar:file:/C:/dir/sub%20dir/1.0/foo-1.0.jar!/org/Bar.class"));
     }
 
+    @Test
     public void testDecodeUrlLenient() {
         assertEquals(" ", FileUtils.decodeUrl(" "));
         assertEquals("\u00E4\u00F6\u00FC\u00DF", FileUtils.decodeUrl("\u00E4\u00F6\u00FC\u00DF"));
@@ -416,16 +479,19 @@ public class FileUtilsTestCase extends F
         assertEquals("%2G", FileUtils.decodeUrl("%2G"));
     }
 
+    @Test
     public void testDecodeUrlNullSafe() {
         assertNull(FileUtils.decodeUrl(null));
     }
 
+    @Test
     public void testDecodeUrlEncodingUtf8() {
         assertEquals("\u00E4\u00F6\u00FC\u00DF", FileUtils.decodeUrl("%C3%A4%C3%B6%C3%BC%C3%9F"));
     }
 
     // toFiles
 
+    @Test
     public void testToFiles1() throws Exception {
         final URL[] urls = new URL[]{
                 new URL("file", null, "file1.txt"),
@@ -438,6 +504,7 @@ public class FileUtilsTestCase extends F
         assertEquals("File: " + files[1], true, files[1].toString().contains("file2.txt"));
     }
 
+    @Test
     public void testToFiles2() throws Exception {
         final URL[] urls = new URL[]{
                 new URL("file", null, "file1.txt"),
@@ -450,6 +517,7 @@ public class FileUtilsTestCase extends F
         assertEquals("File: " + files[1], null, files[1]);
     }
 
+    @Test
     public void testToFiles3() throws Exception {
         final URL[] urls = null;
         final File[] files = FileUtils.toFiles(urls);
@@ -457,6 +525,7 @@ public class FileUtilsTestCase extends F
         assertEquals(0, files.length);
     }
 
+    @Test
     public void testToFiles3a() throws Exception {
         final URL[] urls = new URL[0]; // empty array
         final File[] files = FileUtils.toFiles(urls);
@@ -464,6 +533,7 @@ public class FileUtilsTestCase extends F
         assertEquals(0, files.length);
     }
 
+    @Test
     public void testToFiles4() throws Exception {
         final URL[] urls = new URL[]{
                 new URL("file", null, "file1.txt"),
@@ -472,12 +542,13 @@ public class FileUtilsTestCase extends F
         try {
             FileUtils.toFiles(urls);
             fail();
-        } catch (final IllegalArgumentException ex) {
+        } catch (final IllegalArgumentException ignore) {
         }
     }
 
     // toURLs
 
+    @Test
     public void testToURLs1() throws Exception {
         final File[] files = new File[]{
                 new File(getTestDirectory(), "file1.txt"),
@@ -497,7 +568,7 @@ public class FileUtilsTestCase extends F
         assertTrue(urls[2].toExternalForm().contains("test%20file.txt"));
     }
 
-//    public void testToURLs2() throws Exception {
+//   @Test public void testToURLs2() throws Exception {
 //        File[] files = new File[] {
 //            new File(getTestDirectory(), "file1.txt"),
 //            null,
@@ -510,13 +581,14 @@ public class FileUtilsTestCase extends F
 //        assertEquals(null, urls[1]);
 //    }
 //
-//    public void testToURLs3() throws Exception {
+//   @Test public void testToURLs3() throws Exception {
 //        File[] files = null;
 //        URL[] urls = FileUtils.toURLs(files);
 //
 //        assertEquals(0, urls.length);
 //    }
 
+    @Test
     public void testToURLs3a() throws Exception {
         final File[] files = new File[0]; // empty array
         final URL[] urls = FileUtils.toURLs(files);
@@ -526,6 +598,7 @@ public class FileUtilsTestCase extends F
 
     // contentEquals
 
+    @Test
     public void testContentEquals() throws Exception {
         // Non-existent files
         final File file = new File(getTestDirectory(), getName());
@@ -581,6 +654,7 @@ public class FileUtilsTestCase extends F
         assertTrue(FileUtils.contentEquals(file, file2));
     }
 
+    @Test
     public void testContentEqualsIgnoreEOL() throws Exception {
         // Non-existent files
         final File file1 = new File(getTestDirectory(), getName());
@@ -661,6 +735,7 @@ public class FileUtilsTestCase extends F
 
     // copyURLToFile
 
+    @Test
     public void testCopyURLToFile() throws Exception {
         // Creates file
         final File file = new File(getTestDirectory(), getName());
@@ -684,6 +759,7 @@ public class FileUtilsTestCase extends F
         //TODO Maybe test copy to itself like for copyFile()
     }
 
+    @Test
     public void testCopyURLToFileWithTimeout() throws Exception {
         // Creates file
         final File file = new File(getTestDirectory(), "testCopyURLToFileWithTimeout");
@@ -709,6 +785,7 @@ public class FileUtilsTestCase extends F
 
     // forceMkdir
 
+    @Test
     public void testForceMkdir() throws Exception {
         // Tests with existing directory
         FileUtils.forceMkdir(getTestDirectory());
@@ -723,7 +800,7 @@ public class FileUtilsTestCase extends F
         try {
             FileUtils.forceMkdir(testFile);
             fail("Exception expected.");
-        } catch (final IOException ex) {
+        } catch (final IOException ignore) {
         }
 
         testFile.delete();
@@ -733,6 +810,7 @@ public class FileUtilsTestCase extends F
         assertTrue("Directory was not created.", testFile.exists());
     }
 
+    @Test
     public void testForceMkdirParent() throws Exception {
         // Tests with existing directory
         assertTrue(getTestDirectory().exists());
@@ -758,6 +836,7 @@ public class FileUtilsTestCase extends F
 
     // sizeOfDirectory
 
+    @Test
     public void testSizeOfDirectory() throws Exception {
         final File file = new File(getTestDirectory(), getName());
 
@@ -765,7 +844,7 @@ public class FileUtilsTestCase extends F
         try {
             FileUtils.sizeOfDirectory(file);
             fail("Exception expected.");
-        } catch (final IllegalArgumentException ex) {
+        } catch (final IllegalArgumentException ignore) {
         }
 
         // Creates file
@@ -776,7 +855,7 @@ public class FileUtilsTestCase extends F
         try {
             FileUtils.sizeOfDirectory(file);
             fail("Exception expected.");
-        } catch (final IllegalArgumentException ex) {
+        } catch (final IllegalArgumentException ignore) {
         }
 
         // Existing directory
@@ -806,6 +885,7 @@ public class FileUtilsTestCase extends F
         }
     }
 
+    @Test
     public void testSizeOfDirectoryAsBigInteger() throws Exception {
         final File file = new File(getTestDirectory(), getName());
 
@@ -813,7 +893,7 @@ public class FileUtilsTestCase extends F
         try {
             FileUtils.sizeOfDirectoryAsBigInteger(file);
             fail("Exception expected.");
-        } catch (final IllegalArgumentException ex) {
+        } catch (final IllegalArgumentException ignore) {
         }
 
         // Creates file
@@ -824,7 +904,7 @@ public class FileUtilsTestCase extends F
         try {
             FileUtils.sizeOfDirectoryAsBigInteger(file);
             fail("Exception expected.");
-        } catch (final IllegalArgumentException ex) {
+        } catch (final IllegalArgumentException ignore) {
         }
 
         // Existing directory
@@ -840,7 +920,17 @@ public class FileUtilsTestCase extends F
         file.mkdir();
 
         final File nonEmptyFile = new File(file, "nonEmptyFile" + System.nanoTime());
-        this.createFile(nonEmptyFile, TEST_DIRECTORY_SIZE_GT_ZERO_BI.longValue());
+        if (!nonEmptyFile.getParentFile().exists()) {
+            throw new IOException("Cannot create file " + nonEmptyFile
+                    + " as the parent directory does not exist");
+        }
+        final BufferedOutputStream output =
+                new BufferedOutputStream(new FileOutputStream(nonEmptyFile));
+        try {
+            TestUtils.generateTestData(output, TEST_DIRECTORY_SIZE_GT_ZERO_BI.longValue());
+        } finally {
+            IOUtils.closeQuietly(output);
+        }
         nonEmptyFile.deleteOnExit();
 
         assertEquals("Unexpected directory size", TEST_DIRECTORY_SIZE_GT_ZERO_BI,
@@ -851,6 +941,7 @@ public class FileUtilsTestCase extends F
     }
 
     // Compare sizes of a directory tree using long and BigInteger methods
+    @Test
     public void testCompareSizeOf() {
         final File start = new File("src/test/java");
         final long sizeLong1 = FileUtils.sizeOf(start);
@@ -860,6 +951,7 @@ public class FileUtilsTestCase extends F
         assertEquals("longSize should equal BigSize", sizeLong1, sizeBig.longValue());
     }
 
+    @Test
     public void testSizeOf() throws Exception {
         final File file = new File(getTestDirectory(), getName());
 
@@ -867,14 +959,14 @@ public class FileUtilsTestCase extends F
         try {
             FileUtils.sizeOf(null);
             fail("Exception expected.");
-        } catch (final NullPointerException ex) {
+        } catch (final NullPointerException ignore) {
         }
 
         // Non-existent file
         try {
             FileUtils.sizeOf(file);
             fail("Exception expected.");
-        } catch (final IllegalArgumentException ex) {
+        } catch (final IllegalArgumentException ignore) {
         }
 
         // Creates file
@@ -896,6 +988,7 @@ public class FileUtilsTestCase extends F
                 FileUtils.sizeOf(getTestDirectory()));
     }
 
+    @Test
     public void testSizeOfAsBigInteger() throws Exception {
         final File file = new File(getTestDirectory(), getName());
 
@@ -903,14 +996,14 @@ public class FileUtilsTestCase extends F
         try {
             FileUtils.sizeOfAsBigInteger(null);
             fail("Exception expected.");
-        } catch (final NullPointerException ex) {
+        } catch (final NullPointerException ignore) {
         }
 
         // Non-existent file
         try {
             FileUtils.sizeOfAsBigInteger(file);
             fail("Exception expected.");
-        } catch (final IllegalArgumentException ex) {
+        } catch (final IllegalArgumentException ignore) {
         }
 
         // Creates file
@@ -933,6 +1026,7 @@ public class FileUtilsTestCase extends F
     }
 
     // isFileNewer / isFileOlder
+    @Test
     public void testIsFileNewerOlder() throws Exception {
         final File reference = new File(getTestDirectory(), "FileUtils-reference.txt");
         final File oldFile = new File(getTestDirectory(), "FileUtils-old.txt");
@@ -940,7 +1034,17 @@ public class FileUtilsTestCase extends F
         final File invalidFile = new File(getTestDirectory(), "FileUtils-invalid-file.txt");
 
         // Create Files
-        createFile(oldFile, 0);
+        if (!oldFile.getParentFile().exists()) {
+            throw new IOException("Cannot create file " + oldFile
+                    + " as the parent directory does not exist");
+        }
+        final BufferedOutputStream output1 =
+                new BufferedOutputStream(new FileOutputStream(oldFile));
+        try {
+            TestUtils.generateTestData(output1, (long) 0);
+        } finally {
+            IOUtils.closeQuietly(output1);
+        }
 
         do {
             try {
@@ -948,7 +1052,17 @@ public class FileUtilsTestCase extends F
             } catch (final InterruptedException ie) {
                 // ignore
             }
-            createFile(reference, 0);
+            if (!reference.getParentFile().exists()) {
+                throw new IOException("Cannot create file " + reference
+                        + " as the parent directory does not exist");
+            }
+            final BufferedOutputStream output =
+                    new BufferedOutputStream(new FileOutputStream(reference));
+            try {
+                TestUtils.generateTestData(output, (long) 0);
+            } finally {
+                IOUtils.closeQuietly(output);
+            }
         } while (oldFile.lastModified() == reference.lastModified());
 
         final Date date = new Date();
@@ -960,7 +1074,17 @@ public class FileUtilsTestCase extends F
             } catch (final InterruptedException ie) {
                 // ignore
             }
-            createFile(newFile, 0);
+            if (!newFile.getParentFile().exists()) {
+                throw new IOException("Cannot create file " + newFile
+                        + " as the parent directory does not exist");
+            }
+            final BufferedOutputStream output =
+                    new BufferedOutputStream(new FileOutputStream(newFile));
+            try {
+                TestUtils.generateTestData(output, (long) 0);
+            } finally {
+                IOUtils.closeQuietly(output);
+            }
         } while (reference.lastModified() == newFile.lastModified());
 
         // Test isFileNewer()
@@ -1010,7 +1134,7 @@ public class FileUtilsTestCase extends F
         try {
             FileUtils.isFileNewer(oldFile, (File) null);
             fail("Newer Null reference, expected IllegalArgumentExcepion");
-        } catch (final IllegalArgumentException expected) {
+        } catch (final IllegalArgumentException ignore) {
             // expected result
         }
 
@@ -1018,7 +1142,7 @@ public class FileUtilsTestCase extends F
         try {
             FileUtils.isFileNewer(oldFile, invalidFile);
             fail("Newer invalid reference, expected IllegalArgumentExcepion");
-        } catch (final IllegalArgumentException expected) {
+        } catch (final IllegalArgumentException ignore) {
             // expected result
         }
 
@@ -1026,7 +1150,7 @@ public class FileUtilsTestCase extends F
         try {
             FileUtils.isFileNewer(oldFile, (Date) null);
             fail("Newer Null date, expected IllegalArgumentExcepion");
-        } catch (final IllegalArgumentException expected) {
+        } catch (final IllegalArgumentException ignore) {
             // expected result
         }
 
@@ -1036,7 +1160,7 @@ public class FileUtilsTestCase extends F
         try {
             FileUtils.isFileOlder(null, now);
             fail("Older Null, expected IllegalArgumentExcepion");
-        } catch (final IllegalArgumentException expected) {
+        } catch (final IllegalArgumentException ignore) {
             // expected result
         }
 
@@ -1044,7 +1168,7 @@ public class FileUtilsTestCase extends F
         try {
             FileUtils.isFileOlder(oldFile, (File) null);
             fail("Older Null reference, expected IllegalArgumentExcepion");
-        } catch (final IllegalArgumentException expected) {
+        } catch (final IllegalArgumentException ignore) {
             // expected result
         }
 
@@ -1052,7 +1176,7 @@ public class FileUtilsTestCase extends F
         try {
             FileUtils.isFileOlder(oldFile, invalidFile);
             fail("Older invalid reference, expected IllegalArgumentExcepion");
-        } catch (final IllegalArgumentException expected) {
+        } catch (final IllegalArgumentException ignore) {
             // expected result
         }
 
@@ -1060,7 +1184,7 @@ public class FileUtilsTestCase extends F
         try {
             FileUtils.isFileOlder(oldFile, (Date) null);
             fail("Older Null date, expected IllegalArgumentExcepion");
-        } catch (final IllegalArgumentException expected) {
+        } catch (final IllegalArgumentException ignore) {
             // expected result
         }
 
@@ -1068,6 +1192,7 @@ public class FileUtilsTestCase extends F
 
     // copyFile
 
+    @Test
     public void testCopyFile1() throws Exception {
         final File destination = new File(getTestDirectory(), "copy1.txt");
 
@@ -1083,6 +1208,7 @@ public class FileUtilsTestCase extends F
             testFile1.lastModified() == destination.lastModified());*/
     }
 
+    @Test
     public void testCopyFileToOutputStream() throws Exception {
         final ByteArrayOutputStream destination = new ByteArrayOutputStream();
         FileUtils.copyFile(testFile1, destination);
@@ -1091,13 +1217,25 @@ public class FileUtilsTestCase extends F
         Assert.assertArrayEquals("Check Full copy", expected, destination.toByteArray());
     }
 
-    public void IGNOREtestCopyFileLarge() throws Exception {
+    @Test
+    @Ignore
+    public void testCopyFileLarge() throws Exception {
 
         final File largeFile = new File(getTestDirectory(), "large.txt");
         final File destination = new File(getTestDirectory(), "copylarge.txt");
 
         System.out.println("START:   " + new java.util.Date());
-        createFile(largeFile, FileUtils.ONE_GB);
+        if (!largeFile.getParentFile().exists()) {
+            throw new IOException("Cannot create file " + largeFile
+                    + " as the parent directory does not exist");
+        }
+        final BufferedOutputStream output =
+                new BufferedOutputStream(new FileOutputStream(largeFile));
+        try {
+            TestUtils.generateTestData(output, FileUtils.ONE_GB);
+        } finally {
+            IOUtils.closeQuietly(output);
+        }
         System.out.println("CREATED: " + new java.util.Date());
         FileUtils.copyFile(largeFile, destination);
         System.out.println("COPIED:  " + new java.util.Date());
@@ -1106,6 +1244,7 @@ public class FileUtilsTestCase extends F
         assertEquals("Check Full copy", largeFile.length(), destination.length());
     }
 
+    @Test
     public void testCopyFile2() throws Exception {
         final File destination = new File(getTestDirectory(), "copy2.txt");
 
@@ -1121,6 +1260,7 @@ public class FileUtilsTestCase extends F
             testFile1.lastModified() == destination.lastModified());*/
     }
 
+    @Test
     public void testCopyToSelf() throws Exception {
         final File destination = new File(getTestDirectory(), "copy3.txt");
         //Prepare a test file
@@ -1134,6 +1274,7 @@ public class FileUtilsTestCase extends F
         }
     }
 
+    @Test
     public void testCopyFile2WithoutFileDatePreservation() throws Exception {
         final File destination = new File(getTestDirectory(), "copy2.txt");
 
@@ -1149,9 +1290,30 @@ public class FileUtilsTestCase extends F
             testFile1.lastModified() != destination.lastModified());*/
     }
 
+    @Test
     public void testCopyDirectoryToDirectory_NonExistingDest() throws Exception {
-        createFile(testFile1, 1234);
-        createFile(testFile2, 4321);
+        if (!testFile1.getParentFile().exists()) {
+            throw new IOException("Cannot create file " + testFile1
+                    + " as the parent directory does not exist");
+        }
+        final BufferedOutputStream output1 =
+                new BufferedOutputStream(new FileOutputStream(testFile1));
+        try {
+            TestUtils.generateTestData(output1, (long) 1234);
+        } finally {
+            IOUtils.closeQuietly(output1);
+        }
+        if (!testFile2.getParentFile().exists()) {
+            throw new IOException("Cannot create file " + testFile2
+                    + " as the parent directory does not exist");
+        }
+        final BufferedOutputStream output =
+                new BufferedOutputStream(new FileOutputStream(testFile2));
+        try {
+            TestUtils.generateTestData(output, (long) 4321);
+        } finally {
+            IOUtils.closeQuietly(output);
+        }
         final File srcDir = getTestDirectory();
         final File subDir = new File(srcDir, "sub");
         subDir.mkdir();
@@ -1172,9 +1334,30 @@ public class FileUtilsTestCase extends F
         FileUtils.deleteDirectory(destDir);
     }
 
+    @Test
     public void testCopyDirectoryToNonExistingDest() throws Exception {
-        createFile(testFile1, 1234);
-        createFile(testFile2, 4321);
+        if (!testFile1.getParentFile().exists()) {
+            throw new IOException("Cannot create file " + testFile1
+                    + " as the parent directory does not exist");
+        }
+        final BufferedOutputStream output1 =
+                new BufferedOutputStream(new FileOutputStream(testFile1));
+        try {
+            TestUtils.generateTestData(output1, (long) 1234);
+        } finally {
+            IOUtils.closeQuietly(output1);
+        }
+        if (!testFile2.getParentFile().exists()) {
+            throw new IOException("Cannot create file " + testFile2
+                    + " as the parent directory does not exist");
+        }
+        final BufferedOutputStream output =
+                new BufferedOutputStream(new FileOutputStream(testFile2));
+        try {
+            TestUtils.generateTestData(output, (long) 4321);
+        } finally {
+            IOUtils.closeQuietly(output);
+        }
         final File srcDir = getTestDirectory();
         final File subDir = new File(srcDir, "sub");
         subDir.mkdir();
@@ -1193,9 +1376,30 @@ public class FileUtilsTestCase extends F
         FileUtils.deleteDirectory(destDir);
     }
 
+    @Test
     public void testCopyDirectoryToExistingDest() throws Exception {
-        createFile(testFile1, 1234);
-        createFile(testFile2, 4321);
+        if (!testFile1.getParentFile().exists()) {
+            throw new IOException("Cannot create file " + testFile1
+                    + " as the parent directory does not exist");
+        }
+        final BufferedOutputStream output1 =
+                new BufferedOutputStream(new FileOutputStream(testFile1));
+        try {
+            TestUtils.generateTestData(output1, (long) 1234);
+        } finally {
+            IOUtils.closeQuietly(output1);
+        }
+        if (!testFile2.getParentFile().exists()) {
+            throw new IOException("Cannot create file " + testFile2
+                    + " as the parent directory does not exist");
+        }
+        final BufferedOutputStream output =
+                new BufferedOutputStream(new FileOutputStream(testFile2));
+        try {
+            TestUtils.generateTestData(output, (long) 4321);
+        } finally {
+            IOUtils.closeQuietly(output);
+        }
         final File srcDir = getTestDirectory();
         final File subDir = new File(srcDir, "sub");
         subDir.mkdir();
@@ -1213,6 +1417,7 @@ public class FileUtilsTestCase extends F
         assertTrue(new File(destDir, "sub/A.txt").exists());
     }
 
+    @Test
     public void testCopyDirectoryFiltered() throws Exception {
         final File grandParentDir = new File(getTestDirectory(), "grandparent");
         final File parentDir = new File(grandParentDir, "parent");
@@ -1230,6 +1435,7 @@ public class FileUtilsTestCase extends F
         assertEquals("file3.txt", files.get(2).getName());
     }
 
+    @Test
     public void testCopyDirectoryPreserveDates() throws Exception {
         final File source = new File(getTestDirectory(), "source");
         final File sourceDirectory = new File(source, "directory");
@@ -1282,6 +1488,7 @@ public class FileUtilsTestCase extends F
     }
 
     /* Test for IO-141 */
+    @Test
     public void testCopyDirectoryToChild() throws Exception {
         final File grandParentDir = new File(getTestDirectory(), "grandparent");
         final File parentDir = new File(grandParentDir, "parent");
@@ -1300,6 +1507,7 @@ public class FileUtilsTestCase extends F
     }
 
     /* Test for IO-141 */
+    @Test
     public void testCopyDirectoryToGrandChild() throws Exception {
         final File grandParentDir = new File(getTestDirectory(), "grandparent");
         final File parentDir = new File(grandParentDir, "parent");
@@ -1315,6 +1523,7 @@ public class FileUtilsTestCase extends F
     }
 
     /* Test for IO-217 FileUtils.copyDirectoryToDirectory makes infinite loops */
+    @Test
     public void testCopyDirectoryToItself() throws Exception {
         final File dir = new File(getTestDirectory(), "itself");
         dir.mkdirs();
@@ -1343,46 +1552,48 @@ public class FileUtilsTestCase extends F
         FileUtils.writeStringToFile(file6, "File 6 in grandChild2", "UTF8");
     }
 
+    @Test
     public void testCopyDirectoryErrors() throws Exception {
         try {
             FileUtils.copyDirectory(null, null);
             fail();
-        } catch (final NullPointerException ex) {
+        } catch (final NullPointerException ignore) {
         }
         try {
             FileUtils.copyDirectory(new File("a"), null);
             fail();
-        } catch (final NullPointerException ex) {
+        } catch (final NullPointerException ignore) {
         }
         try {
             FileUtils.copyDirectory(null, new File("a"));
             fail();
-        } catch (final NullPointerException ex) {
+        } catch (final NullPointerException ignore) {
         }
         try {
             FileUtils.copyDirectory(new File("doesnt-exist"), new File("a"));
             fail();
-        } catch (final IOException ex) {
+        } catch (final IOException ignore) {
         }
         try {
             FileUtils.copyDirectory(testFile1, new File("a"));
             fail();
-        } catch (final IOException ex) {
+        } catch (final IOException ignore) {
         }
         try {
             FileUtils.copyDirectory(getTestDirectory(), testFile1);
             fail();
-        } catch (final IOException ex) {
+        } catch (final IOException ignore) {
         }
         try {
             FileUtils.copyDirectory(getTestDirectory(), getTestDirectory());
             fail();
-        } catch (final IOException ex) {
+        } catch (final IOException ignore) {
         }
     }
 
     // forceDelete
 
+    @Test
     public void testForceDeleteAFile1() throws Exception {
         final File destination = new File(getTestDirectory(), "copy1.txt");
         destination.createNewFile();
@@ -1391,6 +1602,7 @@ public class FileUtilsTestCase extends F
         assertTrue("Check No Exist", !destination.exists());
     }
 
+    @Test
     public void testForceDeleteAFile2() throws Exception {
         final File destination = new File(getTestDirectory(), "copy2.txt");
         destination.createNewFile();
@@ -1399,6 +1611,7 @@ public class FileUtilsTestCase extends F
         assertTrue("Check No Exist", !destination.exists());
     }
 
+    @Test
     public void testForceDeleteAFile3() throws Exception {
         final File destination = new File(getTestDirectory(), "no_such_file");
         assertTrue("Check No Exist", !destination.exists());
@@ -1411,6 +1624,7 @@ public class FileUtilsTestCase extends F
 
     // copyFileToDirectory
 
+    @Test
     public void testCopyFile1ToDir() throws Exception {
         final File directory = new File(getTestDirectory(), "subdir");
         if (!directory.exists()) {
@@ -1437,6 +1651,7 @@ public class FileUtilsTestCase extends F
         }
     }
 
+    @Test
     public void testCopyFile2ToDir() throws Exception {
         final File directory = new File(getTestDirectory(), "subdir");
         if (!directory.exists()) {
@@ -1458,6 +1673,7 @@ public class FileUtilsTestCase extends F
 
     // forceDelete
 
+    @Test
     public void testForceDeleteDir() throws Exception {
         final File testDirectory = getTestDirectory();
         FileUtils.forceDelete(testDirectory.getParentFile());
@@ -1469,6 +1685,7 @@ public class FileUtilsTestCase extends F
     /*
      *  Test the FileUtils implementation.
      */
+    @Test
     public void testFileUtils() throws Exception {
         // Loads file from classpath
         final File file1 = new File(getTestDirectory(), "test.txt");
@@ -1500,6 +1717,7 @@ public class FileUtilsTestCase extends F
 
     }
 
+    @Test
     public void testTouch() throws IOException {
         final File file = new File(getTestDirectory(), "touch.txt");
         if (file.exists()) {
@@ -1525,6 +1743,7 @@ public class FileUtilsTestCase extends F
         assertEquals("FileUtils.touch() changed lastModified to less than now+3s", true, file.lastModified() <= now + 3000);
     }
 
+    @Test
     public void testListFiles() throws Exception {
         final File srcDir = getTestDirectory();
         final File subDir = new File(srcDir, "list_test");
@@ -1538,7 +1757,17 @@ public class FileUtilsTestCase extends F
 
         for (int i = 0; i < fileNames.length; ++i) {
             final File theFile = new File(subDir, fileNames[i]);
-            createFile(theFile, fileSizes[i]);
+            if (!theFile.getParentFile().exists()) {
+                throw new IOException("Cannot create file " + theFile
+                        + " as the parent directory does not exist");
+            }
+            final BufferedOutputStream output =
+                    new BufferedOutputStream(new FileOutputStream(theFile));
+            try {
+                TestUtils.generateTestData(output, (long) fileSizes[i]);
+            } finally {
+                IOUtils.closeQuietly(output);
+            }
         }
 
         final Collection<File> files = FileUtils.listFiles(subDir,
@@ -1567,6 +1796,7 @@ public class FileUtilsTestCase extends F
         subDir.delete();
     }
 
+    @Test
     public void testListFilesWithDirs() throws IOException {
         final File srcDir = getTestDirectory();
 
@@ -1577,7 +1807,17 @@ public class FileUtilsTestCase extends F
         subDir2.mkdir();
 
         final File someFile = new File(subDir2, "a.txt");
-        createFile(someFile, 100);
+        if (!someFile.getParentFile().exists()) {
+            throw new IOException("Cannot create file " + someFile
+                    + " as the parent directory does not exist");
+        }
+        final BufferedOutputStream output =
+                new BufferedOutputStream(new FileOutputStream(someFile));
+        try {
+            TestUtils.generateTestData(output, (long) 100);
+        } finally {
+            IOUtils.closeQuietly(output);
+        }
 
         final File subDir3 = new File(subDir2, "subdir3");
         subDir3.mkdir();
@@ -1594,6 +1834,7 @@ public class FileUtilsTestCase extends F
         subDir1.delete();
     }
 
+    @Test
     public void testIterateFiles() throws Exception {
         final File srcDir = getTestDirectory();
         final File subDir = new File(srcDir, "list_test");
@@ -1604,7 +1845,17 @@ public class FileUtilsTestCase extends F
 
         for (int i = 0; i < fileNames.length; ++i) {
             final File theFile = new File(subDir, fileNames[i]);
-            createFile(theFile, fileSizes[i]);
+            if (!theFile.getParentFile().exists()) {
+                throw new IOException("Cannot create file " + theFile
+                        + " as the parent directory does not exist");
+            }
+            final BufferedOutputStream output =
+                    new BufferedOutputStream(new FileOutputStream(theFile));
+            try {
+                TestUtils.generateTestData(output, (long) fileSizes[i]);
+            } finally {
+                IOUtils.closeQuietly(output);
+            }
         }
 
         final Iterator<File> files = FileUtils.iterateFiles(subDir,
@@ -1630,6 +1881,7 @@ public class FileUtilsTestCase extends F
         subDir.delete();
     }
 
+    @Test
     public void testIterateFilesAndDirs() throws IOException {
         final File srcDir = getTestDirectory();
 
@@ -1640,7 +1892,17 @@ public class FileUtilsTestCase extends F
         subDir2.mkdir();
 
         final File someFile = new File(subDir2, "a.txt");
-        createFile(someFile, 100);
+        if (!someFile.getParentFile().exists()) {
+            throw new IOException("Cannot create file " + someFile
+                    + " as the parent directory does not exist");
+        }
+        final BufferedOutputStream output =
+                new BufferedOutputStream(new FileOutputStream(someFile));
+        try {
+            TestUtils.generateTestData(output, (long) 100);
+        } finally {
+            IOUtils.closeQuietly(output);
+        }
 
         final File subDir3 = new File(subDir2, "subdir3");
         subDir3.mkdir();
@@ -1660,6 +1922,7 @@ public class FileUtilsTestCase extends F
         assertEquals(filesCount, filesAndDirs.size());
     }
 
+    @Test
     public void testReadFileToStringWithDefaultEncoding() throws Exception {
         final File file = new File(getTestDirectory(), "read.obj");
         final FileOutputStream out = new FileOutputStream(file);
@@ -1671,6 +1934,7 @@ public class FileUtilsTestCase extends F
         assertEquals("Hello /u1234", data);
     }
 
+    @Test
     public void testReadFileToStringWithEncoding() throws Exception {
         final File file = new File(getTestDirectory(), "read.obj");
         final FileOutputStream out = new FileOutputStream(file);
@@ -1682,6 +1946,7 @@ public class FileUtilsTestCase extends F
         assertEquals("Hello /u1234", data);
     }
 
+    @Test
     public void testReadFileToByteArray() throws Exception {
         final File file = new File(getTestDirectory(), "read.txt");
         final FileOutputStream out = new FileOutputStream(file);
@@ -1697,76 +1962,85 @@ public class FileUtilsTestCase extends F
         assertEquals(31, data[2]);
     }
 
+    @Test
     public void testReadLines() throws Exception {
-        final File file = newFile("lines.txt");
+        final File file = TestUtils.newFile(getTestDirectory(), "lines.txt");
         try {
             final String[] data = new String[]{"hello", "/u1234", "", "this is", "some text"};
-            createLineBasedFile(file, data);
+            TestUtils.createLineBasedFile(file, data);
 
             final List<String> lines = FileUtils.readLines(file, "UTF-8");
             assertEquals(Arrays.asList(data), lines);
         } finally {
-            deleteFile(file);
+            TestUtils.deleteFile(file);
         }
     }
 
+    @Test
     public void testWriteStringToFile1() throws Exception {
         final File file = new File(getTestDirectory(), "write.txt");
         FileUtils.writeStringToFile(file, "Hello /u1234", "UTF8");
         final byte[] text = "Hello /u1234".getBytes("UTF8");
-        assertEqualContent(text, file);
+        TestUtils.assertEqualContent(text, file);
     }
 
+    @Test
     public void testWriteStringToFile2() throws Exception {
         final File file = new File(getTestDirectory(), "write.txt");
         FileUtils.writeStringToFile(file, "Hello /u1234", (String) null);
         final byte[] text = "Hello /u1234".getBytes();
-        assertEqualContent(text, file);
+        TestUtils.assertEqualContent(text, file);
     }
 
+    @Test
     public void testWriteStringToFile3() throws Exception {
         final File file = new File(getTestDirectory(), "write.txt");
         FileUtils.writeStringToFile(file, "Hello /u1234", (Charset) null);
         final byte[] text = "Hello /u1234".getBytes();
-        assertEqualContent(text, file);
+        TestUtils.assertEqualContent(text, file);
     }
 
+    @Test
     public void testWriteCharSequence1() throws Exception {
         final File file = new File(getTestDirectory(), "write.txt");
         FileUtils.write(file, "Hello /u1234", "UTF8");
         final byte[] text = "Hello /u1234".getBytes("UTF8");
-        assertEqualContent(text, file);
+        TestUtils.assertEqualContent(text, file);
     }
 
+    @Test
     public void testWriteCharSequence2() throws Exception {
         final File file = new File(getTestDirectory(), "write.txt");
         FileUtils.write(file, "Hello /u1234", (String) null);
         final byte[] text = "Hello /u1234".getBytes();
-        assertEqualContent(text, file);
+        TestUtils.assertEqualContent(text, file);
     }
 
+    @Test
     public void testWriteByteArrayToFile() throws Exception {
         final File file = new File(getTestDirectory(), "write.obj");
         final byte[] data = new byte[]{11, 21, 31};
         FileUtils.writeByteArrayToFile(file, data);
-        assertEqualContent(data, file);
+        TestUtils.assertEqualContent(data, file);
     }
 
+    @Test
     public void testWriteByteArrayToFile_WithOffsetAndLength() throws Exception {
         final File file = new File(getTestDirectory(), "write.obj");
         final byte[] data = new byte[]{11, 21, 32, 41, 51};
         final byte[] writtenData = new byte[3];
         System.arraycopy(data, 1, writtenData, 0, 3);
         FileUtils.writeByteArrayToFile(file, data, 1, 3);
-        assertEqualContent(writtenData, file);
+        TestUtils.assertEqualContent(writtenData, file);
     }
 
+    @Test
     public void testWriteLines_4arg() throws Exception {
         final Object[] data = new Object[]{
                 "hello", new StringBuffer("world"), "", "this is", null, "some text"};
         final List<Object> list = Arrays.asList(data);
 
-        final File file = newFile("lines.txt");
+        final File file = TestUtils.newFile(getTestDirectory(), "lines.txt");
         FileUtils.writeLines(file, "US-ASCII", list, "*");
 
         final String expected = "hello*world**this is**some text*";
@@ -1774,19 +2048,21 @@ public class FileUtilsTestCase extends F
         assertEquals(expected, actual);
     }
 
+    @Test
     public void testWriteLines_4arg_Writer_nullData() throws Exception {
-        final File file = newFile("lines.txt");
+        final File file = TestUtils.newFile(getTestDirectory(), "lines.txt");
         FileUtils.writeLines(file, "US-ASCII", null, "*");
 
         assertEquals("Sizes differ", 0, file.length());
     }
 
+    @Test
     public void testWriteLines_4arg_nullSeparator() throws Exception {
         final Object[] data = new Object[]{
                 "hello", new StringBuffer("world"), "", "this is", null, "some text"};
         final List<Object> list = Arrays.asList(data);
 
-        final File file = newFile("lines.txt");
+        final File file = TestUtils.newFile(getTestDirectory(), "lines.txt");
         FileUtils.writeLines(file, "US-ASCII", list, null);
 
         final String expected = "hello" + IOUtils.LINE_SEPARATOR + "world" + IOUtils.LINE_SEPARATOR +
@@ -1796,12 +2072,13 @@ public class FileUtilsTestCase extends F
         assertEquals(expected, actual);
     }
 
+    @Test
     public void testWriteLines_3arg_nullSeparator() throws Exception {
         final Object[] data = new Object[]{
                 "hello", new StringBuffer("world"), "", "this is", null, "some text"};
         final List<Object> list = Arrays.asList(data);
 
-        final File file = newFile("lines.txt");
+        final File file = TestUtils.newFile(getTestDirectory(), "lines.txt");
         FileUtils.writeLines(file, "US-ASCII", list);
 
         final String expected = "hello" + IOUtils.LINE_SEPARATOR + "world" + IOUtils.LINE_SEPARATOR +
@@ -1811,8 +2088,9 @@ public class FileUtilsTestCase extends F
         assertEquals(expected, actual);
     }
 
+    @Test
     public void testWriteLines_5argsWithAppendOptionTrue_ShouldNotDeletePreviousFileLines() throws Exception {
-        final File file = newFile("lines.txt");
+        final File file = TestUtils.newFile(getTestDirectory(), "lines.txt");
         FileUtils.writeStringToFile(file, "This line was there before you...");
 
         final List<String> linesToAppend = Arrays.asList("my first line", "The second Line");
@@ -1826,8 +2104,9 @@ public class FileUtilsTestCase extends F
         assertEquals(expected, actual);
     }
 
+    @Test
     public void testWriteLines_5argsWithAppendOptionFalse_ShouldDeletePreviousFileLines() throws Exception {
-        final File file = newFile("lines.txt");
+        final File file = TestUtils.newFile(getTestDirectory(), "lines.txt");
         FileUtils.writeStringToFile(file, "This line was there before you...");
 
         final List<String> linesToAppend = Arrays.asList("my first line", "The second Line");
@@ -1840,8 +2119,9 @@ public class FileUtilsTestCase extends F
         assertEquals(expected, actual);
     }
 
+    @Test
     public void testWriteLines_4argsWithAppendOptionTrue_ShouldNotDeletePreviousFileLines() throws Exception {
-        final File file = newFile("lines.txt");
+        final File file = TestUtils.newFile(getTestDirectory(), "lines.txt");
         FileUtils.writeStringToFile(file, "This line was there before you...");
 
         final List<String> linesToAppend = Arrays.asList("my first line", "The second Line");
@@ -1855,8 +2135,9 @@ public class FileUtilsTestCase extends F
         assertEquals(expected, actual);
     }
 
+    @Test
     public void testWriteLines_4argsWithAppendOptionFalse_ShouldDeletePreviousFileLines() throws Exception {
-        final File file = newFile("lines.txt");
+        final File file = TestUtils.newFile(getTestDirectory(), "lines.txt");
         FileUtils.writeStringToFile(file, "This line was there before you...");
 
         final List<String> linesToAppend = Arrays.asList("my first line", "The second Line");
@@ -1870,8 +2151,9 @@ public class FileUtilsTestCase extends F
     }
 
 
+    @Test
     public void testWriteLinesEncoding_WithAppendOptionTrue_ShouldNotDeletePreviousFileLines() throws Exception {
-        final File file = newFile("lines.txt");
+        final File file = TestUtils.newFile(getTestDirectory(), "lines.txt");
         FileUtils.writeStringToFile(file, "This line was there before you...");
 
         final List<String> linesToAppend = Arrays.asList("my first line", "The second Line");
@@ -1885,8 +2167,9 @@ public class FileUtilsTestCase extends F
         assertEquals(expected, actual);
     }
 
+    @Test
     public void testWriteLinesEncoding_WithAppendOptionFalse_ShouldDeletePreviousFileLines() throws Exception {
-        final File file = newFile("lines.txt");
+        final File file = TestUtils.newFile(getTestDirectory(), "lines.txt");
         FileUtils.writeStringToFile(file, "This line was there before you...");
 
         final List<String> linesToAppend = Arrays.asList("my first line", "The second Line");
@@ -1899,8 +2182,9 @@ public class FileUtilsTestCase extends F
         assertEquals(expected, actual);
     }
 
+    @Test
     public void testWriteLines_3argsWithAppendOptionTrue_ShouldNotDeletePreviousFileLines() throws Exception {
-        final File file = newFile("lines.txt");
+        final File file = TestUtils.newFile(getTestDirectory(), "lines.txt");
         FileUtils.writeStringToFile(file, "This line was there before you...");
 
         final List<String> linesToAppend = Arrays.asList("my first line", "The second Line");
@@ -1914,8 +2198,9 @@ public class FileUtilsTestCase extends F
         assertEquals(expected, actual);
     }
 
+    @Test
     public void testWriteLines_3argsWithAppendOptionFalse_ShouldDeletePreviousFileLines() throws Exception {
-        final File file = newFile("lines.txt");
+        final File file = TestUtils.newFile(getTestDirectory(), "lines.txt");
         FileUtils.writeStringToFile(file, "This line was there before you...");
 
         final List<String> linesToAppend = Arrays.asList("my first line", "The second Line");
@@ -1928,8 +2213,9 @@ public class FileUtilsTestCase extends F
         assertEquals(expected, actual);
     }
 
+    @Test
     public void testWriteStringToFileWithEncoding_WithAppendOptionTrue_ShouldNotDeletePreviousFileLines() throws Exception {
-        final File file = newFile("lines.txt");
+        final File file = TestUtils.newFile(getTestDirectory(), "lines.txt");
         FileUtils.writeStringToFile(file, "This line was there before you...");
 
         FileUtils.writeStringToFile(file, "this is brand new data", (String) null, true);
@@ -1940,8 +2226,9 @@ public class FileUtilsTestCase extends F
         assertEquals(expected, actual);
     }
 
+    @Test
     public void testWriteStringToFileWithEncoding_WithAppendOptionFalse_ShouldDeletePreviousFileLines() throws Exception {
-        final File file = newFile("lines.txt");
+        final File file = TestUtils.newFile(getTestDirectory(), "lines.txt");
         FileUtils.writeStringToFile(file, "This line was there before you...");
 
         FileUtils.writeStringToFile(file, "this is brand new data", (String) null, false);
@@ -1951,8 +2238,9 @@ public class FileUtilsTestCase extends F
         assertEquals(expected, actual);
     }
 
+    @Test
     public void testWriteStringToFile_WithAppendOptionTrue_ShouldNotDeletePreviousFileLines() throws Exception {
-        final File file = newFile("lines.txt");
+        final File file = TestUtils.newFile(getTestDirectory(), "lines.txt");
         FileUtils.writeStringToFile(file, "This line was there before you...");
 
         FileUtils.writeStringToFile(file, "this is brand new data", true);
@@ -1963,8 +2251,9 @@ public class FileUtilsTestCase extends F
         assertEquals(expected, actual);
     }
 
+    @Test
     public void testWriteStringToFile_WithAppendOptionFalse_ShouldDeletePreviousFileLines() throws Exception {
-        final File file = newFile("lines.txt");
+        final File file = TestUtils.newFile(getTestDirectory(), "lines.txt");
         FileUtils.writeStringToFile(file, "This line was there before you...");
 
         FileUtils.writeStringToFile(file, "this is brand new data", false);
@@ -1974,8 +2263,9 @@ public class FileUtilsTestCase extends F
         assertEquals(expected, actual);
     }
 
+    @Test
     public void testWriteWithEncoding_WithAppendOptionTrue_ShouldNotDeletePreviousFileLines() throws Exception {
-        final File file = newFile("lines.txt");
+        final File file = TestUtils.newFile(getTestDirectory(), "lines.txt");
         FileUtils.writeStringToFile(file, "This line was there before you...");
 
         FileUtils.write(file, "this is brand new data", (String) null, true);
@@ -1986,8 +2276,9 @@ public class FileUtilsTestCase extends F
         assertEquals(expected, actual);
     }
 
+    @Test
     public void testWriteWithEncoding_WithAppendOptionFalse_ShouldDeletePreviousFileLines() throws Exception {
-        final File file = newFile("lines.txt");
+        final File file = TestUtils.newFile(getTestDirectory(), "lines.txt");
         FileUtils.writeStringToFile(file, "This line was there before you...");
 
         FileUtils.write(file, "this is brand new data", (String) null, false);
@@ -1997,8 +2288,9 @@ public class FileUtilsTestCase extends F
         assertEquals(expected, actual);
     }
 
+    @Test
     public void testWrite_WithAppendOptionTrue_ShouldNotDeletePreviousFileLines() throws Exception {
-        final File file = newFile("lines.txt");
+        final File file = TestUtils.newFile(getTestDirectory(), "lines.txt");
         FileUtils.writeStringToFile(file, "This line was there before you...");
 
         FileUtils.write(file, "this is brand new data", true);
@@ -2009,8 +2301,9 @@ public class FileUtilsTestCase extends F
         assertEquals(expected, actual);
     }
 
+    @Test
     public void testWrite_WithAppendOptionFalse_ShouldDeletePreviousFileLines() throws Exception {
-        final File file = newFile("lines.txt");
+        final File file = TestUtils.newFile(getTestDirectory(), "lines.txt");
         FileUtils.writeStringToFile(file, "This line was there before you...");
 
         FileUtils.write(file, "this is brand new data", false);
@@ -2020,8 +2313,9 @@ public class FileUtilsTestCase extends F
         assertEquals(expected, actual);
     }
 
+    @Test
     public void testWriteByteArrayToFile_WithAppendOptionTrue_ShouldNotDeletePreviousFileLines() throws Exception {
-        final File file = newFile("lines.txt");
+        final File file = TestUtils.newFile(getTestDirectory(), "lines.txt");
         FileUtils.writeStringToFile(file, "This line was there before you...");
 
         FileUtils.writeByteArrayToFile(file, "this is brand new data".getBytes(), true);
@@ -2032,8 +2326,9 @@ public class FileUtilsTestCase extends F
         assertEquals(expected, actual);
     }
 
+    @Test
     public void testWriteByteArrayToFile_WithAppendOptionFalse_ShouldDeletePreviousFileLines() throws Exception {
-        final File file = newFile("lines.txt");
+        final File file = TestUtils.newFile(getTestDirectory(), "lines.txt");
         FileUtils.writeStringToFile(file, "This line was there before you...");
 
         FileUtils.writeByteArrayToFile(file, "this is brand new data".getBytes(), false);
@@ -2043,8 +2338,9 @@ public class FileUtilsTestCase extends F
         assertEquals(expected, actual);
     }
 
+    @Test
     public void testWriteByteArrayToFile_WithOffsetAndLength_WithAppendOptionTrue_ShouldNotDeletePreviousFileLines() throws Exception {
-        final File file = newFile("lines.txt");
+        final File file = TestUtils.newFile(getTestDirectory(), "lines.txt");
         FileUtils.writeStringToFile(file, "This line was there before you...");
 
         final byte[] data = "SKIP_THIS_this is brand new data_AND_SKIP_THIS".getBytes(Charsets.UTF_8);
@@ -2055,8 +2351,9 @@ public class FileUtilsTestCase extends F
         assertEquals(expected, actual);
     }
 
+    @Test
     public void testWriteByteArrayToFile_WithOffsetAndLength_WithAppendOptionTrue_ShouldDeletePreviousFileLines() throws Exception {
-        final File file = newFile("lines.txt");
+        final File file = TestUtils.newFile(getTestDirectory(), "lines.txt");
         FileUtils.writeStringToFile(file, "This line was there before you...");
 
         final byte[] data = "SKIP_THIS_this is brand new data_AND_SKIP_THIS".getBytes(Charsets.UTF_8);
@@ -2068,6 +2365,7 @@ public class FileUtilsTestCase extends F
     }
 
     //-----------------------------------------------------------------------
+    @Test
     public void testChecksumCRC32() throws Exception {
         // create a test file
         final String text = "Imagination is more important than knowledge - Einstein";
@@ -2085,6 +2383,7 @@ public class FileUtilsTestCase extends F
         assertEquals(expectedValue, resultValue);
     }
 
+    @Test
     public void testChecksum() throws Exception {
         // create a test file
         final String text = "Imagination is more important than knowledge - Einstein";
@@ -2105,6 +2404,7 @@ public class FileUtilsTestCase extends F
         assertEquals(expectedValue, resultValue);
     }
 
+    @Test
     public void testChecksumOnNullFile() throws Exception {
         try {
             FileUtils.checksum(null, new CRC32());
@@ -2114,6 +2414,7 @@ public class FileUtilsTestCase extends F
         }
     }
 
+    @Test
     public void testChecksumOnNullChecksum() throws Exception {
         // create a test file
         final String text = "Imagination is more important than knowledge - Einstein";
@@ -2127,6 +2428,7 @@ public class FileUtilsTestCase extends F
         }
     }
 
+    @Test
     public void testChecksumOnDirectory() throws Exception {
         try {
             FileUtils.checksum(new File("."), new CRC32());
@@ -2136,6 +2438,7 @@ public class FileUtilsTestCase extends F
         }
     }
 
+    @Test
     public void testChecksumDouble() throws Exception {
         // create a test file
         final String text1 = "Imagination is more important than knowledge - Einstein";
@@ -2162,6 +2465,7 @@ public class FileUtilsTestCase extends F
         assertEquals(expectedValue, resultValue);
     }
 
+    @Test
     public void testDeleteDirectoryWithNonDirectory() throws Exception {
         try {
             FileUtils.deleteDirectory(testFile1);
@@ -2171,6 +2475,7 @@ public class FileUtilsTestCase extends F
         }
     }
 
+    @Test
     public void testDeleteQuietlyForNull() {
         try {
             FileUtils.deleteQuietly(null);
@@ -2179,11 +2484,22 @@ public class FileUtilsTestCase extends F
         }
     }
 
+    @Test
     public void testDeleteQuietlyDir() throws IOException {
         final File testDirectory = new File(getTestDirectory(), "testDeleteQuietlyDir");
         final File testFile = new File(testDirectory, "testDeleteQuietlyFile");
         testDirectory.mkdirs();
-        createFile(testFile, 0);
+        if (!testFile.getParentFile().exists()) {
+            throw new IOException("Cannot create file " + testFile
+                    + " as the parent directory does not exist");
+        }
+        final BufferedOutputStream output =
+                new BufferedOutputStream(new FileOutputStream(testFile));
+        try {
+            TestUtils.generateTestData(output, (long) 0);
+        } finally {
+            IOUtils.closeQuietly(output);
+        }
 
         assertTrue(testDirectory.exists());
         assertTrue(testFile.exists());
@@ -2192,15 +2508,27 @@ public class FileUtilsTestCase extends F
         assertFalse("Check No Exist", testFile.exists());
     }
 
+    @Test
     public void testDeleteQuietlyFile() throws IOException {
         final File testFile = new File(getTestDirectory(), "testDeleteQuietlyFile");
-        createFile(testFile, 0);
+        if (!testFile.getParentFile().exists()) {
+            throw new IOException("Cannot create file " + testFile
+                    + " as the parent directory does not exist");
+        }
+        final BufferedOutputStream output =
+                new BufferedOutputStream(new FileOutputStream(testFile));
+        try {
+            TestUtils.generateTestData(output, (long) 0);
+        } finally {
+            IOUtils.closeQuietly(output);
+        }
 
         assertTrue(testFile.exists());
         FileUtils.deleteQuietly(testFile);
         assertFalse("Check No Exist", testFile.exists());
     }
 
+    @Test
     public void testDeleteQuietlyNonExistent() {
         final File testFile = new File("testDeleteQuietlyNonExistent");
         assertFalse(testFile.exists());
@@ -2212,6 +2540,7 @@ public class FileUtilsTestCase extends F
         }
     }
 
+    @Test
     public void testMoveFile_Rename() throws Exception {
         final File destination = new File(getTestDirectory(), "move1.txt");
 
@@ -2220,6 +2549,7 @@ public class FileUtilsTestCase extends F
         assertTrue("Original deleted", !testFile1.exists());
     }
 
+    @Test
     public void testMoveFile_CopyDelete() throws Exception {
         final File destination = new File(getTestDirectory(), "move2.txt");
         final File src = new File(testFile1.getAbsolutePath()) {
@@ -2238,6 +2568,7 @@ public class FileUtilsTestCase extends F
     }
 
 
+    @Test
     public void testMoveFile_CopyDelete_Failed() throws Exception {
         final File destination = new File(getTestDirectory(), "move3.txt");
         final File src = new File(testFile1.getAbsolutePath()) {
@@ -2267,6 +2598,7 @@ public class FileUtilsTestCase extends F
         }
     }
 
+    @Test
     public void testMoveFile_Errors() throws Exception {
         try {
             FileUtils.moveFile(null, new File("foo"));
@@ -2294,8 +2626,28 @@ public class FileUtilsTestCase extends F
         }
         final File testSourceFile = new File(getTestDirectory(), "testMoveFileSource");
         final File testDestFile = new File(getTestDirectory(), "testMoveFileSource");
-        createFile(testSourceFile, 0);
-        createFile(testDestFile, 0);
+        if (!testSourceFile.getParentFile().exists()) {
+            throw new IOException("Cannot create file " + testSourceFile
+                    + " as the parent directory does not exist");
+        }
+        final BufferedOutputStream output1 =
+                new BufferedOutputStream(new FileOutputStream(testSourceFile));
+        try {
+            TestUtils.generateTestData(output1, (long) 0);
+        } finally {
+            IOUtils.closeQuietly(output1);
+        }
+        if (!testDestFile.getParentFile().exists()) {
+            throw new IOException("Cannot create file " + testDestFile
+                    + " as the parent directory does not exist");
+        }
+        final BufferedOutputStream output =
+                new BufferedOutputStream(new FileOutputStream(testDestFile));
+        try {
+            TestUtils.generateTestData(output, (long) 0);
+        } finally {
+            IOUtils.closeQuietly(output);
+        }
         try {
             FileUtils.moveFile(testSourceFile, testDestFile);
             fail("Expected FileExistsException when dest already exists");
@@ -2305,6 +2657,7 @@ public class FileUtilsTestCase extends F
 
     }
 
+    @Test
     public void testMoveFileToDirectory() throws Exception {
         final File destDir = new File(getTestDirectory(), "moveFileDestDir");
         final File movedFile = new File(destDir, testFile1.getName());
@@ -2316,6 +2669,7 @@ public class FileUtilsTestCase extends F
         assertTrue("Original deleted", !testFile1.exists());
     }
 
+    @Test
     public void testMoveFileToDirectory_Errors() throws Exception {
         try {
             FileUtils.moveFileToDirectory(null, new File("foo"), true);
@@ -2331,8 +2685,28 @@ public class FileUtilsTestCase extends F
         }
         final File testFile1 = new File(getTestDirectory(), "testMoveFileFile1");
         final File testFile2 = new File(getTestDirectory(), "testMoveFileFile2");
-        createFile(testFile1, 0);
-        createFile(testFile2, 0);
+        if (!testFile1.getParentFile().exists()) {
+            throw new IOException("Cannot create file " + testFile1
+                    + " as the parent directory does not exist");
+        }
+        final BufferedOutputStream output1 =
+                new BufferedOutputStream(new FileOutputStream(testFile1));
+        try {
+            TestUtils.generateTestData(output1, (long) 0);
+        } finally {
+            IOUtils.closeQuietly(output1);
+        }
+        if (!testFile2.getParentFile().exists()) {
+            throw new IOException("Cannot create file " + testFile2
+                    + " as the parent directory does not exist");
+        }
+        final BufferedOutputStream output =
+                new BufferedOutputStream(new FileOutputStream(testFile2));
+        try {
+            TestUtils.generateTestData(output, (long) 0);
+        } finally {
+            IOUtils.closeQuietly(output);
+        }
         try {
             FileUtils.moveFileToDirectory(testFile1, testFile2, true);
             fail("Expected IOException when dest not a directory");
@@ -2350,13 +2724,24 @@ public class FileUtilsTestCase extends F
     }
 
 
+    @Test
     public void testMoveDirectory_Rename() throws Exception {
         final File dir = getTestDirectory();
         final File src = new File(dir, "testMoveDirectory1Source");
         final File testDir = new File(src, "foo");
         final File testFile = new File(testDir, "bar");
         testDir.mkdirs();
-        createFile(testFile, 0);
+        if (!testFile.getParentFile().exists()) {
+            throw new IOException("Cannot create file " + testFile
+                    + " as the parent directory does not exist");
+        }
+        final BufferedOutputStream output =
+                new BufferedOutputStream(new FileOutputStream(testFile));
+        try {
+            TestUtils.generateTestData(output, (long) 0);
+        } finally {
+            IOUtils.closeQuietly(output);
+        }
         final File destination = new File(dir, "testMoveDirectory1Dest");
         FileUtils.deleteDirectory(destination);
 
@@ -2372,6 +2757,7 @@ public class FileUtilsTestCase extends F
         assertTrue("Check file moved", movedFile.exists());
     }
 
+    @Test
     public void testMoveDirectory_CopyDelete() throws Exception {
 
         final File dir = getTestDirectory();
@@ -2387,7 +2773,17 @@ public class FileUtilsTestCase extends F
         final File testDir = new File(src, "foo");
         final File testFile = new File(testDir, "bar");
         testDir.mkdirs();
-        createFile(testFile, 0);
+        if (!testFile.getParentFile().exists()) {
+            throw new IOException("Cannot create file " + testFile
+                    + " as the parent directory does not exist");
+        }
+        final BufferedOutputStream output =
+                new BufferedOutputStream(new FileOutputStream(testFile));
+        try {
+            TestUtils.generateTestData(output, (long) 0);
+        } finally {
+            IOUtils.closeQuietly(output);
+        }
         final File destination = new File(dir, "testMoveDirectory1Dest");
         FileUtils.deleteDirectory(destination);
 
@@ -2403,6 +2799,7 @@ public class FileUtilsTestCase extends F
         assertTrue("Check file moved", movedFile.exists());
     }
 
+    @Test
     public void testMoveDirectory_Errors() throws Exception {
         try {
             FileUtils.moveDirectory(null, new File("foo"));
@@ -2423,7 +2820,17 @@ public class FileUtilsTestCase extends F
             // expected
         }
         final File testFile = new File(getTestDirectory(), "testMoveDirectoryFile");
-        createFile(testFile, 0);
+        if (!testFile.getParentFile().exists()) {
+            throw new IOException("Cannot create file " + testFile
+                    + " as the parent directory does not exist");
+        }
+        final BufferedOutputStream output =
+                new BufferedOutputStream(new FileOutputStream(testFile));
+        try {
+            TestUtils.generateTestData(output, (long) 0);
+        } finally {
+            IOUtils.closeQuietly(output);
+        }
         try {
             FileUtils.moveDirectory(testFile, new File("foo"));
             fail("Expected IOException when source is not a directory");
@@ -2443,13 +2850,24 @@ public class FileUtilsTestCase extends F
 
     }
 
+    @Test
     public void testMoveDirectoryToDirectory() throws Exception {
         final File dir = getTestDirectory();
         final File src = new File(dir, "testMoveDirectory1Source");
         final File testChildDir = new File(src, "foo");
         final File testFile = new File(testChildDir, "bar");
         testChildDir.mkdirs();
-        createFile(testFile, 0);
+        if (!testFile.getParentFile().exists()) {
+            throw new IOException("Cannot create file " + testFile
+                    + " as the parent directory does not exist");
+        }
+        final BufferedOutputStream output =
+                new BufferedOutputStream(new FileOutputStream(testFile));
+        try {
+            TestUtils.generateTestData(output, (long) 0);
+        } finally {
+            IOUtils.closeQuietly(output);
+        }
         final File destDir = new File(dir, "testMoveDirectory1Dest");
         FileUtils.deleteDirectory(destDir);
         assertFalse("Check Exist before", destDir.exists());
@@ -2468,6 +2886,7 @@ public class FileUtilsTestCase extends F
         assertTrue("Check file moved", movedFile.exists());
     }
 
+    @Test
     public void testMoveDirectoryToDirectory_Errors() throws Exception {
         try {
             FileUtils.moveDirectoryToDirectory(null, new File("foo"), true);
@@ -2483,8 +2902,28 @@ public class FileUtilsTestCase extends F
         }
         final File testFile1 = new File(getTestDirectory(), "testMoveFileFile1");
         final File testFile2 = new File(getTestDirectory(), "testMoveFileFile2");
-        createFile(testFile1, 0);
-        createFile(testFile2, 0);
+        if (!testFile1.getParentFile().exists()) {
+            throw new IOException("Cannot create file " + testFile1
+                    + " as the parent directory does not exist");
+        }
+        final BufferedOutputStream output1 =
+                new BufferedOutputStream(new FileOutputStream(testFile1));
+        try {
+            TestUtils.generateTestData(output1, (long) 0);
+        } finally {
+            IOUtils.closeQuietly(output1);
+        }
+        if (!testFile2.getParentFile().exists()) {
+            throw new IOException("Cannot create file " + testFile2
+                    + " as the parent directory does not exist");
+        }
+        final BufferedOutputStream output =
+                new BufferedOutputStream(new FileOutputStream(testFile2));
+        try {
+            TestUtils.generateTestData(output, (long) 0);
+        } finally {
+            IOUtils.closeQuietly(output);
+        }
         try {
             FileUtils.moveDirectoryToDirectory(testFile1, testFile2, true);
             fail("Expected IOException when dest not a directory");
@@ -2501,12 +2940,23 @@ public class FileUtilsTestCase extends F
         }
     }
 
+    @Test
     public void testMoveToDirectory() throws Exception {
         final File destDir = new File(getTestDirectory(), "testMoveToDirectoryDestDir");
         final File testDir = new File(getTestDirectory(), "testMoveToDirectoryTestDir");
         final File testFile = new File(getTestDirectory(), "testMoveToDirectoryTestFile");
         testDir.mkdirs();
-        createFile(testFile, 0);
+        if (!testFile.getParentFile().exists()) {
+            throw new IOException("Cannot create file " + testFile
+                    + " as the parent directory does not exist");
+        }
+        final BufferedOutputStream output =
+                new BufferedOutputStream(new FileOutputStream(testFile));
+        try {
+            TestUtils.generateTestData(output, (long) 0);
+        } finally {
+            IOUtils.closeQuietly(output);
+        }
         final File movedFile = new File(destDir, testFile.getName());
         final File movedDir = new File(destDir, testFile.getName());
 
@@ -2524,6 +2974,7 @@ public class FileUtilsTestCase extends F
         assertFalse("Check Original Dir doesn't exist", testDir.exists());
     }
 
+    @Test
     public void testMoveToDirectory_Errors() throws Exception {
         try {
             FileUtils.moveDirectoryToDirectory(null, new File("foo"), true);
@@ -2547,6 +2998,7 @@ public class FileUtilsTestCase extends F
         }
     }
 
+    @Test
     public void testIO300() throws Exception {
         final File testDirectory = getTestDirectory();
         final File src = new File(testDirectory, "dir1");
@@ -2562,6 +3014,7 @@ public class FileUtilsTestCase extends F
         assertTrue(src.exists());
     }
 
+    @Test
     public void testIO276() throws Exception {
         final File dir = new File("target", "IO276");
         assertTrue(dir + " should not be present", dir.mkdirs());
@@ -2586,6 +3039,7 @@ public class FileUtilsTestCase extends F
     }
 
     // This test relies on FileUtils.copyFile using File.length to check the output size
+    @Test
     public void testIncorrectOutputSize() throws Exception {
         File inFile = new File("pom.xml");
         File outFile = new ShorterFile("target/pom.tmp"); // it will report a shorter file

Modified: commons/proper/io/trunk/src/test/java/org/apache/commons/io/FileUtilsWaitForTestCase.java
URL: http://svn.apache.org/viewvc/commons/proper/io/trunk/src/test/java/org/apache/commons/io/FileUtilsWaitForTestCase.java?rev=1718944&r1=1718943&r2=1718944&view=diff
==============================================================================
--- commons/proper/io/trunk/src/test/java/org/apache/commons/io/FileUtilsWaitForTestCase.java (original)
+++ commons/proper/io/trunk/src/test/java/org/apache/commons/io/FileUtilsWaitForTestCase.java Wed Dec  9 19:50:30 2015
@@ -16,11 +16,13 @@
  */
 package org.apache.commons.io;
 
+import org.junit.Test;
+
 import java.io.File;
 import java.util.concurrent.CountDownLatch;
 import java.util.concurrent.atomic.AtomicBoolean;
 
-import org.apache.commons.io.testtools.FileBasedTestCase;
+import static org.junit.Assert.assertTrue;
 
 /**
  * This is used to test FileUtils.waitFor() method for correctness.
@@ -28,32 +30,18 @@ import org.apache.commons.io.testtools.F
  * @version $Id$
  * @see FileUtils
  */
-public class FileUtilsWaitForTestCase extends FileBasedTestCase {
+public class FileUtilsWaitForTestCase {
     // This class has been broken out from FileUtilsTestCase
     // to solve issues as per BZ 38927
 
-    public FileUtilsWaitForTestCase(final String name) {
-        super(name);
-    }
-
-    /** @see junit.framework.TestCase#setUp() */
-    @Override
-    protected void setUp() throws Exception {
-        getTestDirectory().mkdirs();
-    }
-
-    /** @see junit.framework.TestCase#tearDown() */
-    @Override
-    protected void tearDown() throws Exception {
-        FileUtils.deleteDirectory(getTestDirectory());
-    }
-
     //-----------------------------------------------------------------------
+    @Test
     public void testWaitFor() {
         FileUtils.waitFor(new File(""), -1);
         FileUtils.waitFor(new File(""), 2);
     }
 
+    @Test
     public void testWaitForInterrupted() throws InterruptedException {
         final AtomicBoolean wasInterrupted = new AtomicBoolean(false);
         final CountDownLatch started = new CountDownLatch(1);