You are viewing a plain text version of this content. The canonical link for it is here.
Posted to doxia-commits@maven.apache.org by lt...@apache.org on 2011/03/19 20:11:40 UTC

svn commit: r1083249 - in /maven/doxia/doxia-sitetools/trunk/doxia-decoration-model/src: main/java/org/apache/maven/doxia/site/decoration/inheritance/ test/java/org/apache/maven/doxia/site/decoration/inheritance/

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() );