Package org.jbehave.core.io
Class LoadFromRelativeFile
- java.lang.Object
-
- org.jbehave.core.io.LoadFromRelativeFile
-
- All Implemented Interfaces:
ResourceLoader
,StoryLoader
public class LoadFromRelativeFile extends Object implements ResourceLoader, StoryLoader
Loads story resources from relative file paths that are traversal to a given location.
StoryLoader loader = new LoadFromRelativeFile(codeLocationFromClass(YourStory.class));
By default, it uses traversal directory 'target/test-classes' with source dir in 'src/test/java'.
Other traversal locations can be specified via the varargs constructor:
StoryLoader loader = new LoadFromRelativeFile(codeLocationFromClass(YourStory.class), mavenModuleTestStoryFilePath("src/test/java"), intellijProjectTestStoryFilePath("src/test/java"));
Convenience methods :
mavenModuleStoryFilePath(java.lang.String)
,mavenModuleTestStoryFilePath(java.lang.String)
,intellijProjectStoryFilePath(java.lang.String)
,intellijProjectTestStoryFilePath(java.lang.String)
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
LoadFromRelativeFile.StoryFilePath
For use the the varargs constructor ofLoadFromRelativeFile
, to allow a range of possibilities for locating Story file paths
-
Constructor Summary
Constructors Constructor Description LoadFromRelativeFile(URL location)
LoadFromRelativeFile(URL location, Charset charset)
LoadFromRelativeFile(URL location, Charset charset, LoadFromRelativeFile.StoryFilePath... traversals)
LoadFromRelativeFile(URL location, LoadFromRelativeFile.StoryFilePath... traversals)
-
Method Summary
Modifier and Type Method Description static LoadFromRelativeFile.StoryFilePath
intellijProjectStoryFilePath(String relativePath)
Intellij by default, has its PRODUCTION classes in classes/production.static LoadFromRelativeFile.StoryFilePath
intellijProjectTestStoryFilePath(String relativePath)
Intellij by default, has its TEST classes in classes/test.protected String
loadContent(String path)
String
loadResourceAsText(String resourcePath)
String
loadStoryAsText(String storyPath)
static LoadFromRelativeFile.StoryFilePath
mavenModuleStoryFilePath(String relativePath)
Maven by default, has its PRODUCTION classes in target/classes.static LoadFromRelativeFile.StoryFilePath
mavenModuleTestStoryFilePath(String relativePath)
Maven by default, has its TEST classes in target/test-classes.
-
-
-
Constructor Detail
-
LoadFromRelativeFile
public LoadFromRelativeFile(URL location)
-
LoadFromRelativeFile
public LoadFromRelativeFile(URL location, LoadFromRelativeFile.StoryFilePath... traversals)
-
LoadFromRelativeFile
public LoadFromRelativeFile(URL location, Charset charset, LoadFromRelativeFile.StoryFilePath... traversals)
-
-
Method Detail
-
loadResourceAsText
public String loadResourceAsText(String resourcePath)
- Specified by:
loadResourceAsText
in interfaceResourceLoader
-
loadStoryAsText
public String loadStoryAsText(String storyPath)
- Specified by:
loadStoryAsText
in interfaceStoryLoader
-
mavenModuleStoryFilePath
public static LoadFromRelativeFile.StoryFilePath mavenModuleStoryFilePath(String relativePath)
Maven by default, has its PRODUCTION classes in target/classes. This story file path is relative to that.- Parameters:
relativePath
- the path to the stories' base-dir inside the module- Returns:
- the resulting StoryFilePath
-
mavenModuleTestStoryFilePath
public static LoadFromRelativeFile.StoryFilePath mavenModuleTestStoryFilePath(String relativePath)
Maven by default, has its TEST classes in target/test-classes. This story file path is relative to that.- Parameters:
relativePath
- the path to the stories' base-dir inside the module- Returns:
- the resulting StoryFilePath
-
intellijProjectStoryFilePath
public static LoadFromRelativeFile.StoryFilePath intellijProjectStoryFilePath(String relativePath)
Intellij by default, has its PRODUCTION classes in classes/production. This story file path is relative to that.- Parameters:
relativePath
- the path to the stories' base-dir inside the module- Returns:
- the resulting StoryFilePath
-
intellijProjectTestStoryFilePath
public static LoadFromRelativeFile.StoryFilePath intellijProjectTestStoryFilePath(String relativePath)
Intellij by default, has its TEST classes in classes/test. This story file path is relative to that.- Parameters:
relativePath
- the path to the stories' base-dir inside the module- Returns:
- the resulting StoryFilePath
-
-