Author: ltheussl Date: Wed Apr 29 08:11:11 2009 New Revision: 769701 URL: http://svn.apache.org/viewvc?rev=769701&view=rev Log: [DOXIA-308] encodeId returns an empty string which is not a valid id
Modified: maven/doxia/doxia/trunk/doxia-core/src/main/java/org/apache/maven/doxia/util/DoxiaUtils.java maven/doxia/doxia/trunk/doxia-core/src/test/java/org/apache/maven/doxia/util/DoxiaUtilsTest.java Modified: maven/doxia/doxia/trunk/doxia-core/src/main/java/org/apache/maven/doxia/util/DoxiaUtils.java URL: http://svn.apache.org/viewvc/maven/doxia/doxia/trunk/doxia-core/src/main/java/org/apache/maven/doxia/util/DoxiaUtils.java?rev=769701&r1=769700&r2=769701&view=diff ============================================================================== --- maven/doxia/doxia/trunk/doxia-core/src/main/java/org/apache/maven/doxia/util/DoxiaUtils.java (original) +++ maven/doxia/doxia/trunk/doxia-core/src/main/java/org/apache/maven/doxia/util/DoxiaUtils.java Wed Apr 29 08:11:11 2009 @@ -149,7 +149,8 @@ * </p> * <pre> * DoxiaUtils.encodeId( null ) = null - * DoxiaUtils.encodeId( "" ) = "" + * DoxiaUtils.encodeId( "" ) = "a" + * DoxiaUtils.encodeId( " " ) = "a" * DoxiaUtils.encodeId( " _ " ) = "a_" * DoxiaUtils.encodeId( "1" ) = "a1" * DoxiaUtils.encodeId( "1anchor" ) = "a1anchor" @@ -163,6 +164,7 @@ * @param chop true if non-ASCII characters should be ignored. * If false, any non-ASCII characters will be replaced as specified above. * @return The trimmed and encoded id, or null if id is null. + * If id is not null, the return value is guaranteed to be a valid Doxia id. * * @since 1.1.1 */ @@ -175,6 +177,12 @@ id = id.trim(); int length = id.length(); + + if ( length == 0 ) + { + return "a"; + } + StringBuffer buffer = new StringBuffer( length ); for ( int i = 0; i < length; ++i ) Modified: maven/doxia/doxia/trunk/doxia-core/src/test/java/org/apache/maven/doxia/util/DoxiaUtilsTest.java URL: http://svn.apache.org/viewvc/maven/doxia/doxia/trunk/doxia-core/src/test/java/org/apache/maven/doxia/util/DoxiaUtilsTest.java?rev=769701&r1=769700&r2=769701&view=diff ============================================================================== --- maven/doxia/doxia/trunk/doxia-core/src/test/java/org/apache/maven/doxia/util/DoxiaUtilsTest.java (original) +++ maven/doxia/doxia/trunk/doxia-core/src/test/java/org/apache/maven/doxia/util/DoxiaUtilsTest.java Wed Apr 29 08:11:11 2009 @@ -145,8 +145,8 @@ public void testEncodeId() { assertEquals( DoxiaUtils.encodeId( null ), null ); - assertEquals( DoxiaUtils.encodeId( "" ), "" ); - assertEquals( DoxiaUtils.encodeId( " " ), "" ); + assertEquals( DoxiaUtils.encodeId( "" ), "a" ); + assertEquals( DoxiaUtils.encodeId( " " ), "a" ); assertEquals( DoxiaUtils.encodeId( " _ " ), "a_" ); assertEquals( DoxiaUtils.encodeId( "1" ), "a1" ); assertEquals( DoxiaUtils.encodeId( "1anchor" ), "a1anchor" );