Author: nbubna
Date: Wed Dec  3 14:40:13 2008
New Revision: 723110

URL: http://svn.apache.org/viewvc?rev=723110&view=rev
Log:
VELOCITY-651 fix type mismatch due to incomplete isApplicable test in MethodMap

Modified:
    
velocity/engine/trunk/src/java/org/apache/velocity/util/introspection/MethodMap.java
    
velocity/engine/trunk/src/test/org/apache/velocity/test/VarargMethodsTestCase.java

Modified: 
velocity/engine/trunk/src/java/org/apache/velocity/util/introspection/MethodMap.java
URL: 
http://svn.apache.org/viewvc/velocity/engine/trunk/src/java/org/apache/velocity/util/introspection/MethodMap.java?rev=723110&r1=723109&r2=723110&view=diff
==============================================================================
--- 
velocity/engine/trunk/src/java/org/apache/velocity/util/introspection/MethodMap.java
 (original)
+++ 
velocity/engine/trunk/src/java/org/apache/velocity/util/introspection/MethodMap.java
 Wed Dec  3 14:40:13 2008
@@ -328,6 +328,14 @@
             if (methodArgs.length == classes.length + 1 &&
                 methodArgs[methodArgs.length - 1].isArray())
             {
+                // all the args preceding the vararg must match
+                for (int i = 0; i < classes.length; i++)
+                {
+                    if (!isConvertible(methodArgs[i], classes[i], false))
+                    {
+                        return false;
+                    }
+                }
                 return true;
             }
             else

Modified: 
velocity/engine/trunk/src/test/org/apache/velocity/test/VarargMethodsTestCase.java
URL: 
http://svn.apache.org/viewvc/velocity/engine/trunk/src/test/org/apache/velocity/test/VarargMethodsTestCase.java?rev=723110&r1=723109&r2=723110&view=diff
==============================================================================
--- 
velocity/engine/trunk/src/test/org/apache/velocity/test/VarargMethodsTestCase.java
 (original)
+++ 
velocity/engine/trunk/src/test/org/apache/velocity/test/VarargMethodsTestCase.java
 Wed Dec  3 14:40:13 2008
@@ -128,7 +128,6 @@
 
     public void testVelocity651()
     {
-        DEBUG = true;
         assertEvalEquals("String,List", "$nasty.test651('test',['TEST'])");
     }
 


Reply via email to