Class TestSupport
- java.lang.Object
-
- org.apache.tinkerpop.gremlin.util.TestSupport
-
- Direct Known Subclasses:
TestHelper
public class TestSupport extends Object
This is a utility class that is for support of various testing activities and is not meant to be used in other contexts. It is not explicitly in a test package given our dependency hierarchy.- Author:
- Stephen Mallette (http://stephen.genoprime.com)
-
-
Field Summary
Fields Modifier and Type Field Description static String
TEST_DATA_RELATIVE_DIR
-
Constructor Summary
Constructors Modifier Constructor Description protected
TestSupport()
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static String
cleanPathSegment(String toClean)
Removes characters that aren't acceptable in a file path (mostly for windows).static File
generateTempFile(Class<?> clazz, String fileName, String fileNameSuffix)
Creates aFile
reference in the path returned frommakeTestDataPath(java.lang.Class<?>, java.lang.String...)
in a subdirectory calledtemp
.static File
generateTempFileFromResource(Class<?> graphClass, Class<?> resourceClass, String resourceName, String extension)
Copies a file stored as part of a resource to the file system in the path returned frommakeTestDataPath(java.lang.Class<?>, java.lang.String...)
in a subdirectory calledtemp/resources
.static File
generateTempFileFromResource(Class<?> graphClass, Class<?> resourceClass, String resourceName, String extension, boolean overwrite)
Copies a file stored as part of a resource to the file system in the path returned frommakeTestDataPath(java.lang.Class<?>, java.lang.String...)
in a subdirectory calledtemp/resources
.static File
generateTempFileFromResource(Class<?> resourceClass, String resourceName, String extension)
Copies a file stored as part of a resource to the file system in the path returned frommakeTestDataPath(java.lang.Class<?>, java.lang.String...)
in a subdirectory calledtemp/resources
.static File
getRootOfBuildDirectory(Class<?> clazz)
Gets and/or creates the root of the test data directory.static String
makeTestDataDirectory(Class<?> clazz, String... childPath)
Creates aFile
reference that .static String
makeTestDataFile(Class<?> clazz, String fileName)
static String
makeTestDataFile(Class<?> clazz, String subdir, String fileName)
static File
makeTestDataPath(Class<?> clazz, String... childPath)
Creates aFile
reference that points to a directory relative to the supplied class in the/target
directory.
-
-
-
Field Detail
-
TEST_DATA_RELATIVE_DIR
public static final String TEST_DATA_RELATIVE_DIR
- See Also:
- Constant Field Values
-
-
Method Detail
-
makeTestDataPath
public static File makeTestDataPath(Class<?> clazz, String... childPath)
Creates aFile
reference that points to a directory relative to the supplied class in the/target
directory. EachchildPath
passed introduces a new sub-directory and all are placed below theTEST_DATA_RELATIVE_DIR
. For example, calling this method with "a", "b", and "c" as thechildPath
arguments would yield a relative directory like:test-case-data/clazz/a/b/c
. It is a good idea to use the test class for theclazz
argument so that it's easy to find the data if necessary after test execution.Avoid using makeTestDataPath(...).getAbsolutePath() and makeTestDataPath(...).toString() that produces platform-dependent paths, that are incompatible with regular expressions and escape characters. Instead use
Storage.toPath(File)
-
makeTestDataDirectory
public static String makeTestDataDirectory(Class<?> clazz, String... childPath)
Creates aFile
reference that . For example, calling this method with "a", "b", and "c" as thechildPath
arguments would yield a relative directory like:test-case-data/clazz/a/b/c
. It is a good idea to use the test class for theclazz
argument so that it's easy to find the data if necessary after test execution.- Returns:
- UNIX-formatted path to a directory in the underlying
Storage
. The directory is relative to the supplied class in the/target
directory. EachchildPath
passed introduces a new sub-directory and all are placed below theTEST_DATA_RELATIVE_DIR
-
makeTestDataFile
public static String makeTestDataFile(Class<?> clazz, String fileName)
- Parameters:
clazz
-fileName
-- Returns:
- UNIX-formatted path to a fileName in the underlying
Storage
. The file is relative to the supplied class in the/target
directory.
-
makeTestDataFile
public static String makeTestDataFile(Class<?> clazz, String subdir, String fileName)
- Parameters:
clazz
-subdir
-fileName
-- Returns:
- UNIX-formatted path to a subdir/fileName in the underlying
Storage
. The file is relative to the supplied class in the/target
directory.
-
getRootOfBuildDirectory
public static File getRootOfBuildDirectory(Class<?> clazz)
Gets and/or creates the root of the test data directory. This method is here as a convenience and should not be used to store test data. UsemakeTestDataPath(Class, String...)
instead.
-
generateTempFile
public static File generateTempFile(Class<?> clazz, String fileName, String fileNameSuffix) throws IOException
Creates aFile
reference in the path returned frommakeTestDataPath(java.lang.Class<?>, java.lang.String...)
in a subdirectory calledtemp
.- Throws:
IOException
-
generateTempFileFromResource
public static File generateTempFileFromResource(Class<?> resourceClass, String resourceName, String extension) throws IOException
Copies a file stored as part of a resource to the file system in the path returned frommakeTestDataPath(java.lang.Class<?>, java.lang.String...)
in a subdirectory calledtemp/resources
.- Throws:
IOException
-
generateTempFileFromResource
public static File generateTempFileFromResource(Class<?> graphClass, Class<?> resourceClass, String resourceName, String extension) throws IOException
Copies a file stored as part of a resource to the file system in the path returned frommakeTestDataPath(java.lang.Class<?>, java.lang.String...)
in a subdirectory calledtemp/resources
.- Throws:
IOException
-
generateTempFileFromResource
public static File generateTempFileFromResource(Class<?> graphClass, Class<?> resourceClass, String resourceName, String extension, boolean overwrite) throws IOException
Copies a file stored as part of a resource to the file system in the path returned frommakeTestDataPath(java.lang.Class<?>, java.lang.String...)
in a subdirectory calledtemp/resources
.- Throws:
IOException
-
-