Ryan Nelson created JBEHAVE-747:
-----------------------------------

             Summary: codeLocationFromPath breaks for paths with spaces
                 Key: JBEHAVE-747
                 URL: https://jira.codehaus.org/browse/JBEHAVE-747
             Project: JBehave
          Issue Type: Bug
          Components: Core, Core Examples
    Affects Versions: 3.5.4
         Environment: Windows 7 Enterprise 64-bit, Version 6.1 (Build 7600)
Ubuntu Linux 10.04.3 LTS
            Reporter: Ryan Nelson
            Priority: Minor


I discovered this in the Guice examples, but it's not a problem limited to 
Guice.  Take this code that searches for stories:

new StoryFinder().findPaths( CodeLocations.codeLocationFromPath( "resources" 
).getFile(), asList( "**/*.story" ), null );

If the "resources" folder resides in a base path that contains a space, the 
StoryFinder will fail to locate the stories.  This is because 
codeLocationFromPath() uses a java.net.URL object under-the-hood to URL encode 
the path, converting spaces to %20.  Thus, jBehave will look here:

c:\jbehave\folder%20with%20spaces\resources

for stories located here:

c:\jbehave\folder with spaces\resources

This is also a problem for reports.  If relative paths are used in any form, 
when jBehave converts them to full paths, the paths are URL-encoded.  This in 
turn causes our Hudson builds to fail because it cannot locate the reports.

The workaround for this is to not use CodeLocations to locate stories, and to 
use a Hudson project with no spaces, but jBehave really should support paths 
with spaces.  This occurs on both Windows and Linux.



--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://jira.codehaus.org/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

---------------------------------------------------------------------
To unsubscribe from this list, please visit:

    http://xircles.codehaus.org/manage_email


Reply via email to