Details
Description
When invoking LoadFromRelativeFile and passing in a traversal substitution stories are not found because the substitution is not applied. This is due to the difference in the StoryFilePath which forces path separators to be '/'. When the LoadFromRelativeFile code gets the absolute path of location file separators are converted to '\'. This keeps the locationPath.replace code from working
Im invoking the code as..
public Configuration configuration() {
return new MostUsefulConfiguration() // where to find the stories
.useStoryLoader(new LoadFromRelativeFile(CodeLocations.codeLocationFromClass(getClass()), LoadFromRelativeFile.mavenModuleTestStoryFilePath("src/test/resources/jbehave/")))
.useStoryReporterBuilder(
new StoryReporterBuilder().withDefaultFormats()
.withFormats(Format.CONSOLE, Format.TXT));
The code that breaks in LoadFromRelativeFile that break is
String locationPath = new File(CodeLocations.getPathFromURL(location)).getAbsolutePath();
for (StoryFilePath traversal : traversals)