commit f804dd61bd24e9610c083197520d3ac5d8919d77
Author: Mauro Talevi <[email protected]>
AuthorDate: Sat Apr 14 12:43:50 2012 +0200
Commit: Mauro Talevi <[email protected]>
CommitDate: Sat Apr 14 12:43:50 2012 +0200
JBEHAVE-763: Normalise paths to use '/'
diff --git
a/jbehave-core/src/main/java/org/jbehave/core/io/LoadFromRelativeFile.java
b/jbehave-core/src/main/java/org/jbehave/core/io/LoadFromRelativeFile.java
index 8f6c9ec..3573ff3 100755
--- a/jbehave-core/src/main/java/org/jbehave/core/io/LoadFromRelativeFile.java
+++ b/jbehave-core/src/main/java/org/jbehave/core/io/LoadFromRelativeFile.java
@@ -49,7 +49,7 @@ public class LoadFromRelativeFile implements ResourceLoader,
StoryLoader {
public String loadResourceAsText(String resourcePath) {
List<String> traversalPaths = new ArrayList<String>();
- String locationPath = new
File(CodeLocations.getPathFromURL(location)).getAbsolutePath();
+ String locationPath = normalise(new
File(CodeLocations.getPathFromURL(location)).getAbsolutePath());
for (StoryFilePath traversal : traversals) {
String filePath = locationPath.replace(traversal.toRemove,
traversal.relativePath) + "/" + resourcePath;
File file = new File(filePath);
@@ -85,6 +85,10 @@ public class LoadFromRelativeFile implements ResourceLoader,
StoryLoader {
}
}
+ private static String normalise(String path) {
+ return path.replace('\\', '/');
+ }
+
/**
* For use the the varargs constructor of {@link LoadFromRelativeFile}, to
* allow a range of possibilities for locating Story file paths
@@ -94,9 +98,10 @@ public class LoadFromRelativeFile implements ResourceLoader,
StoryLoader {
private final String relativePath;
public StoryFilePath(String toRemove, String relativePath) {
- this.toRemove = toRemove.replace('\\', '/');
- this.relativePath = relativePath.replace('\\', '/');
+ this.toRemove = normalise(toRemove);
+ this.relativePath = normalise(relativePath);
}
+
}
/**