Author: tv
Date: Tue Aug 30 17:29:25 2011
New Revision: 1163300

URL: http://svn.apache.org/viewvc?rev=1163300&view=rev
Log:
Use lastIndexOf() to get the template extension in TurbineTemplateService. Add 
a test to prove this. Issue: TRB-82

Modified:
    
turbine/core/trunk/src/java/org/apache/turbine/services/template/TurbineTemplateService.java
    
turbine/core/trunk/src/test/org/apache/turbine/services/template/TemplateTest.java

Modified: 
turbine/core/trunk/src/java/org/apache/turbine/services/template/TurbineTemplateService.java
URL: 
http://svn.apache.org/viewvc/turbine/core/trunk/src/java/org/apache/turbine/services/template/TurbineTemplateService.java?rev=1163300&r1=1163299&r2=1163300&view=diff
==============================================================================
--- 
turbine/core/trunk/src/java/org/apache/turbine/services/template/TurbineTemplateService.java
 (original)
+++ 
turbine/core/trunk/src/java/org/apache/turbine/services/template/TurbineTemplateService.java
 Tue Aug 30 17:29:25 2011
@@ -325,7 +325,7 @@ public class TurbineTemplateService
             return getDefaultExtension();
         }
 
-        int dotIndex = template.indexOf(EXTENSION_SEPARATOR);
+        int dotIndex = template.lastIndexOf(EXTENSION_SEPARATOR);
 
         return (dotIndex < 0) ? getDefaultExtension() : 
template.substring(dotIndex + 1);
     }

Modified: 
turbine/core/trunk/src/test/org/apache/turbine/services/template/TemplateTest.java
URL: 
http://svn.apache.org/viewvc/turbine/core/trunk/src/test/org/apache/turbine/services/template/TemplateTest.java?rev=1163300&r1=1163299&r2=1163300&view=diff
==============================================================================
--- 
turbine/core/trunk/src/test/org/apache/turbine/services/template/TemplateTest.java
 (original)
+++ 
turbine/core/trunk/src/test/org/apache/turbine/services/template/TemplateTest.java
 Tue Aug 30 17:29:25 2011
@@ -60,6 +60,14 @@ public class TemplateTest
         assertEquals("Default LayoutTemplate failed", "Default.vm",         
ts.getDefaultLayoutTemplateName("foo.vm"));
     }
 
+    public void testTemplateExtension()
+    {
+        assertEquals("Extension extraction failed", "vm", 
ts.getExtension("Default.vm"));
+        assertEquals("Extension extraction failed", "txt", 
ts.getExtension("Default.txt"));
+        // TRB-82
+        assertEquals("Extension extraction failed", "vm", 
ts.getExtension("Default.txt.vm"));
+    }
+
     public void testNonExistingTemplate()
         throws Exception
     {


Reply via email to