Author: ltheussl Date: Sat Mar 19 19:11:39 2011 New Revision: 1083249 URL: http://svn.apache.org/viewvc?rev=1083249&view=rev Log: correct PathTool.getRelativeWebPath that returns '/' for links that go to self
Modified: maven/doxia/doxia-sitetools/trunk/doxia-decoration-model/src/main/java/org/apache/maven/doxia/site/decoration/inheritance/URIPathDescriptor.java maven/doxia/doxia-sitetools/trunk/doxia-decoration-model/src/test/java/org/apache/maven/doxia/site/decoration/inheritance/URIPathDescriptorTest.java Modified: maven/doxia/doxia-sitetools/trunk/doxia-decoration-model/src/main/java/org/apache/maven/doxia/site/decoration/inheritance/URIPathDescriptor.java URL: http://svn.apache.org/viewvc/maven/doxia/doxia-sitetools/trunk/doxia-decoration-model/src/main/java/org/apache/maven/doxia/site/decoration/inheritance/URIPathDescriptor.java?rev=1083249&r1=1083248&r2=1083249&view=diff ============================================================================== --- maven/doxia/doxia-sitetools/trunk/doxia-decoration-model/src/main/java/org/apache/maven/doxia/site/decoration/inheritance/URIPathDescriptor.java (original) +++ maven/doxia/doxia-sitetools/trunk/doxia-decoration-model/src/main/java/org/apache/maven/doxia/site/decoration/inheritance/URIPathDescriptor.java Sat Mar 19 19:11:39 2011 @@ -138,7 +138,7 @@ public class URIPathDescriptor final String relativePath = PathTool.getRelativeWebPath( newBaseURI.toString(), link.toString() ); - return URI.create( relativePath ); + return URI.create( "/".equals( relativePath ) ? "./" : relativePath ); } /** @@ -185,7 +185,7 @@ public class URIPathDescriptor final String relativeBasePath = PathTool.getRelativeWebPath( newBaseURI.getPath(), baseURI.getPath() ); - return URI.create( relativeBasePath ).resolve( link ); + return URI.create( "/".equals( relativeBasePath ) ? "./" : relativeBasePath ).resolve( link ); } /** Modified: maven/doxia/doxia-sitetools/trunk/doxia-decoration-model/src/test/java/org/apache/maven/doxia/site/decoration/inheritance/URIPathDescriptorTest.java URL: http://svn.apache.org/viewvc/maven/doxia/doxia-sitetools/trunk/doxia-decoration-model/src/test/java/org/apache/maven/doxia/site/decoration/inheritance/URIPathDescriptorTest.java?rev=1083249&r1=1083248&r2=1083249&view=diff ============================================================================== --- maven/doxia/doxia-sitetools/trunk/doxia-decoration-model/src/test/java/org/apache/maven/doxia/site/decoration/inheritance/URIPathDescriptorTest.java (original) +++ maven/doxia/doxia-sitetools/trunk/doxia-decoration-model/src/test/java/org/apache/maven/doxia/site/decoration/inheritance/URIPathDescriptorTest.java Sat Mar 19 19:11:39 2011 @@ -142,6 +142,12 @@ public class URIPathDescriptorTest assertEquals( "http://maven.apache.org/source", oldPath.rebaseLink( null ).toString() ); assertEquals( "http://maven.apache.org/source", oldPath.rebaseLink( "C:/Documents and Settings/" ).toString() ); + oldPath = new URIPathDescriptor( maven, "./" ); + assertEquals( "", oldPath.rebaseLink( "http://maven.apache.org/" ).toString() ); + + oldPath = new URIPathDescriptor( maven, "" ); + assertEquals( "", oldPath.rebaseLink( "http://maven.apache.org/" ).toString() ); + oldPath = new URIPathDescriptor( maven, "source/index.html" ); assertEquals( "../source/index.html", oldPath.rebaseLink( "http://maven.apache.org/doxia/" ).toString() ); @@ -190,6 +196,9 @@ public class URIPathDescriptorTest path = new URIPathDescriptor( maven, "http://maven.apache.org/source" ); assertEquals( "source", path.relativizeLink().toString() ); + path = new URIPathDescriptor( maven, "http://maven.apache.org/" ); + assertEquals( "./", path.relativizeLink().toString() ); + path = new URIPathDescriptor( "http://maven.apache.org/doxia/", "http://maven.apache.org/source/" ); assertEquals( "../source/", path.relativizeLink().toString() );