Author: rfscholte Date: Sun Feb 23 17:35:33 2014 New Revision: 1571030 URL: http://svn.apache.org/r1571030 Log: Confirm that stackoverflow issue is not a maven-filtering issue anymore
Modified: maven/shared/trunk/maven-filtering/src/test/java/org/apache/maven/shared/filtering/MultiDelimiterInterpolatorFilterReaderLineEndingTest.java Modified: maven/shared/trunk/maven-filtering/src/test/java/org/apache/maven/shared/filtering/MultiDelimiterInterpolatorFilterReaderLineEndingTest.java URL: http://svn.apache.org/viewvc/maven/shared/trunk/maven-filtering/src/test/java/org/apache/maven/shared/filtering/MultiDelimiterInterpolatorFilterReaderLineEndingTest.java?rev=1571030&r1=1571029&r2=1571030&view=diff ============================================================================== --- maven/shared/trunk/maven-filtering/src/test/java/org/apache/maven/shared/filtering/MultiDelimiterInterpolatorFilterReaderLineEndingTest.java (original) +++ maven/shared/trunk/maven-filtering/src/test/java/org/apache/maven/shared/filtering/MultiDelimiterInterpolatorFilterReaderLineEndingTest.java Sun Feb 23 17:35:33 2014 @@ -80,5 +80,22 @@ public class MultiDelimiterInterpolatorF assertEquals( "t...@titi.com bar", IOUtil.toString( reader ) ); } + + // http://stackoverflow.com/questions/21786805/maven-war-plugin-customize-filter-delimitters-in-webresources/ + @Test + public void testAtDollarExpression() throws Exception + { + when( interpolator.interpolate( eq( "${db.server}" ), eq( "" ), isA( RecursionInterceptor.class ) ) ).thenReturn( "DB_SERVER" ); + when( interpolator.interpolate( eq( "${db.port}" ), eq( "" ), isA( RecursionInterceptor.class ) ) ).thenReturn( "DB_PORT" ); + when( interpolator.interpolate( eq( "${db.name}" ), eq( "" ), isA( RecursionInterceptor.class ) ) ).thenReturn( "DB_NAME" ); + + Reader in = new StringReader( " url=\"jdbc:oracle:thin:\\@${db.server}:${db.port}:${db.name}\"" ); + MultiDelimiterInterpolatorFilterReaderLineEnding reader = + new MultiDelimiterInterpolatorFilterReaderLineEnding( in, interpolator, true ); + reader.setEscapeString( "\\" ); + reader.setDelimiterSpecs( new HashSet<String>( Arrays.asList( "${*}", "@" ) ) ); + + assertEquals( " url=\"jdbc:oracle:thin:@DB_SERVER:DB_PORT:DB_NAME\"", IOUtil.toString( reader ) ); + } }