Package io.helidon.common.testing.junit5
Class TemporaryFolderExt
- java.lang.Object
-
- io.helidon.common.testing.junit5.TemporaryFolderExt
-
- All Implemented Interfaces:
org.junit.jupiter.api.extension.AfterEachCallback
,org.junit.jupiter.api.extension.BeforeEachCallback
,org.junit.jupiter.api.extension.Extension
public class TemporaryFolderExt extends Object implements org.junit.jupiter.api.extension.BeforeEachCallback, org.junit.jupiter.api.extension.AfterEachCallback
JUnit 5 extension for temporary folder operations.Declare the extension in a test using
@RegisterExtension
static TemporaryFolderExt folder = TemporaryFolderExt.build();The
static
is important.When a test needs a temporary folder it invokes
folder.newFolder()
.The extension automatically deletes the temporary files after all tests in the test class have finished.
-
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description void
afterEach(org.junit.jupiter.api.extension.ExtensionContext ec)
void
beforeEach(org.junit.jupiter.api.extension.ExtensionContext ec)
static TemporaryFolderExt
build()
Builds an instance ofTemporaryFolderExt
.File
getRoot()
The root for this test's temporary files.File
newFile()
Creates a new temporary file with a generated unique name.File
newFile(String name)
Creates a new temporary file with the specified name.File
newFolder()
Creates a new temporary folder with a unique generated name.File
newFolder(String name)
Creates a new temporary folder with the specified name.
-
-
-
Method Detail
-
build
public static TemporaryFolderExt build()
Builds an instance ofTemporaryFolderExt
.- Returns:
- a TemporaryFolderExt
-
newFolder
public File newFolder() throws IOException
Creates a new temporary folder with a unique generated name.- Returns:
- File for the newly-created temporary folder
- Throws:
IOException
- in case of error creating the new folder
-
newFolder
public File newFolder(String name) throws IOException
Creates a new temporary folder with the specified name.- Parameters:
name
- of the folder to create- Returns:
- File for the new folder
- Throws:
IOException
- in case of error creating the new folder
-
newFile
public File newFile() throws IOException
Creates a new temporary file with a generated unique name.- Returns:
- the new File
- Throws:
IOException
- in case of error creating the new file
-
newFile
public File newFile(String name) throws IOException
Creates a new temporary file with the specified name.- Parameters:
name
- name to be used for the new file- Returns:
- File for the newly-created file
- Throws:
IOException
- in case of error creating the new file
-
getRoot
public File getRoot()
The root for this test's temporary files.- Returns:
- the root File
-
beforeEach
public void beforeEach(org.junit.jupiter.api.extension.ExtensionContext ec) throws Exception
- Specified by:
beforeEach
in interfaceorg.junit.jupiter.api.extension.BeforeEachCallback
- Throws:
Exception
-
-