org.junit.rules
Class TemporaryFolder

java.lang.Object
  extended by org.junit.rules.ExternalResource
      extended by org.junit.rules.TemporaryFolder
All Implemented Interfaces:
MethodRule

public class TemporaryFolder
extends ExternalResource

The TemporaryFolder Rule allows creation of files and folders that are guaranteed to be deleted when the test method finishes (whether it passes or fails):

 public static class HasTempFolder {
        @Rule
        public TemporaryFolder folder= new TemporaryFolder();
 
        @Test
        public void testUsingTempFolder() throws IOException {
                File createdFile= folder.newFile("myfile.txt");
                File createdFolder= folder.newFolder("subfolder");
                // ...
        }
 }
 


Constructor Summary
TemporaryFolder()
           
 
Method Summary
 void create()
          for testing purposes only.
 void delete()
          Delete all files and folders under the temporary folder.
 File getRoot()
           
 File newFile(String fileName)
          Returns a new fresh file with the given name under the temporary folder.
 File newFolder(String folderName)
          Returns a new fresh folder with the given name under the temporary folder.
 
Methods inherited from class org.junit.rules.ExternalResource
apply
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

TemporaryFolder

public TemporaryFolder()
Method Detail

create

public void create()
            throws IOException
for testing purposes only. Do not use.

Throws:
IOException

newFile

public File newFile(String fileName)
             throws IOException
Returns a new fresh file with the given name under the temporary folder.

Throws:
IOException

newFolder

public File newFolder(String folderName)
Returns a new fresh folder with the given name under the temporary folder.


getRoot

public File getRoot()
Returns:
the location of this temporary folder.

delete

public void delete()
Delete all files and folders under the temporary folder. Usually not called directly, since it is automatically applied by the Rule