This is an automated email from the ASF dual-hosted git repository. markt pushed a commit to branch 8.5.x in repository https://gitbox.apache.org/repos/asf/tomcat.git
commit 3e5dd5c3121fa9763b3c0e0ae1875453f9d87f0f Author: Mark Thomas <ma...@apache.org> AuthorDate: Wed Sep 30 17:00:48 2020 +0100 Fix back-port of new unit test --- build.properties.default | 6 +-- ...estApplicationContextFacadeSecurityManager.java | 49 ++++++++++++---------- 2 files changed, 30 insertions(+), 25 deletions(-) diff --git a/build.properties.default b/build.properties.default index e506f8e..761e161 100644 --- a/build.properties.default +++ b/build.properties.default @@ -225,7 +225,7 @@ hamcrest.home=${base.path}/hamcrest-${hamcrest.version} hamcrest.jar=${hamcrest.home}/hamcrest-${hamcrest.version}.jar hamcrest.loc=${base-maven.loc}/org/hamcrest/hamcrest/${hamcrest.version}/hamcrest-${hamcrest.version}.jar -# ----- EasyMock, version 3.2 or later ----- +# ----- EasyMock, version 3.6 or later ----- easymock.version=3.6 easymock.checksum.enabled=true easymock.checksum.algorithm=SHA-512 @@ -234,7 +234,7 @@ easymock.home=${base.path}/easymock-${easymock.version} easymock.jar=${easymock.home}/easymock-${easymock.version}.jar easymock.loc=${base-maven.loc}/org/easymock/easymock/${easymock.version}/easymock-${easymock.version}.jar -# ----- cglib, used by EasyMock, version 2.2 or later ----- +# ----- cglib, used by EasyMock, version 3.3 or later ----- cglib.version=3.3.0 cglib.checksum.enabled=true cglib.checksum.algorithm=SHA-512 @@ -243,7 +243,7 @@ cglib.home=${base.path}/cglib-${cglib.version} cglib.jar=${cglib.home}/cglib-nodep-${cglib.version}.jar cglib.loc=${base-maven.loc}/cglib/cglib-nodep/${cglib.version}/cglib-nodep-${cglib.version}.jar -# ----- objenesis, used by EasyMock, version 1.2 or later ----- +# ----- objenesis, used by EasyMock, version 2.6 or later ----- objenesis.version=2.6 objenesis.checksum.enabled=true objenesis.checksum.algorithm=SHA-512 diff --git a/test/org/apache/catalina/core/TestApplicationContextFacadeSecurityManager.java b/test/org/apache/catalina/core/TestApplicationContextFacadeSecurityManager.java index fc5a5d5..a89b558 100644 --- a/test/org/apache/catalina/core/TestApplicationContextFacadeSecurityManager.java +++ b/test/org/apache/catalina/core/TestApplicationContextFacadeSecurityManager.java @@ -20,9 +20,9 @@ import java.lang.reflect.Array; import java.lang.reflect.InvocationTargetException; import java.lang.reflect.Method; import java.lang.reflect.Modifier; -import java.util.Arrays; +import java.util.ArrayList; import java.util.Collection; -import java.util.stream.Collectors; +import java.util.List; import org.junit.Assert; import org.junit.Test; @@ -33,6 +33,7 @@ import org.junit.runners.Parameterized.Parameter; import org.apache.catalina.security.SecurityUtil; import org.apache.tomcat.util.security.SecurityManagerBaseTest; import org.easymock.EasyMock; +import org.easymock.IAnswer; import org.easymock.IExpectationSetters; import org.easymock.internal.LastControl; @@ -46,24 +47,24 @@ public final class TestApplicationContextFacadeSecurityManager extends SecurityM */ @Parameterized.Parameters(name = "{index}: method={0}") public static Collection<Method> publicApplicationContextFacadeMethods() { - return Arrays.stream(ApplicationContextFacade.class.getMethods()) - .filter(method -> !Modifier.isStatic(method.getModifiers())) - .filter(method -> { - try { - Object.class.getMethod(method.getName(), method.getParameterTypes()); - return false; - } catch (final NoSuchMethodException e) { - return true; - } - }) - .collect(Collectors.toList()); + List<Method> result = new ArrayList<>(); + for (Method m : ApplicationContextFacade.class.getMethods()) { + if (!Modifier.isStatic(m.getModifiers())) { + try { + Object.class.getMethod(m.getName(), m.getParameterTypes()); + // Skip; + } catch (final NoSuchMethodException e) { + result.add(m); + } + } + } + return result; } private static Object[] getDefaultParams(final Method method) { - final int paramsCount = method.getParameterCount(); - final Object[] params = new Object[paramsCount]; final Class<?>[] paramTypes = method.getParameterTypes(); + final Object[] params = new Object[paramTypes.length]; for (int i = 0; i < params.length; i++) { params[i] = getDefaultValue(paramTypes[i]); } @@ -118,13 +119,17 @@ public final class TestApplicationContextFacadeSecurityManager extends SecurityM EasyMock.expect(expectedAppContextMethod.invoke( mockAppContext, getDefaultParams(methodToTest))); } - expectationSetters - .andAnswer(() -> { - Assert.assertEquals( - expectedAppContextMethod, - LastControl.getCurrentInvocation().getMethod()); - return getDefaultValue(expectedAppContextMethod.getReturnType()); - }).once(); + expectationSetters.andAnswer(new IAnswer<Object>() { + @Override + public Object answer() throws Throwable { + Assert.assertEquals( + expectedAppContextMethod, + LastControl.getCurrentInvocation().getMethod()); + return getDefaultValue(expectedAppContextMethod.getReturnType()); + } + + }).once(); + EasyMock.replay(mockAppContext); EasyMock.verifyUnexpectedCalls(mockAppContext); --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org