From 072fa3f43db13280543a845bba1fcabe015da677 Mon Sep 17 00:00:00 2001 From: Sam Brannen <104798+sbrannen@users.noreply.github.com> Date: Sat, 27 Jun 2026 16:11:42 +0200 Subject: [PATCH] Polishing --- .../spel/MethodInvocationTests.java | 31 ++++++------------- 1 file changed, 9 insertions(+), 22 deletions(-) diff --git a/spring-expression/src/test/java/org/springframework/expression/spel/MethodInvocationTests.java b/spring-expression/src/test/java/org/springframework/expression/spel/MethodInvocationTests.java index 4f837fa1fbf..26a60b42b83 100644 --- a/spring-expression/src/test/java/org/springframework/expression/spel/MethodInvocationTests.java +++ b/spring-expression/src/test/java/org/springframework/expression/spel/MethodInvocationTests.java @@ -16,7 +16,6 @@ package org.springframework.expression.spel; -import java.lang.annotation.Annotation; import java.lang.annotation.Retention; import java.lang.annotation.RetentionPolicy; import java.lang.reflect.Method; @@ -183,7 +182,7 @@ class MethodInvocationTests extends AbstractExpressionTests { StandardEvaluationContext context = new StandardEvaluationContext(); context.setRootObject(new TestObject()); LocalFilter filter = new LocalFilter(); - context.registerMethodFilter(TestObject.class,filter); + context.registerMethodFilter(TestObject.class, filter); // Filter will be called but not do anything, so first doit() will be invoked SpelExpression expr = (SpelExpression) parser.parseExpression("doit(1)"); @@ -209,7 +208,7 @@ class MethodInvocationTests extends AbstractExpressionTests { // check de-registration works filter.filterCalled = false; - context.registerMethodFilter(TestObject.class,null);//clear filter + context.registerMethodFilter(TestObject.class, null); // clear filter context.setRootObject(new TestObject()); expr = (SpelExpression) parser.parseExpression("doit(1)"); result = expr.getValue(context, String.class); @@ -447,32 +446,20 @@ class MethodInvocationTests extends AbstractExpressionTests { // Simple filter static class LocalFilter implements MethodFilter { - public boolean removeIfNotAnnotated = false; + boolean removeIfNotAnnotated = false; - public boolean filterCalled = false; + boolean filterCalled = false; private boolean isAnnotated(Method method) { - Annotation[] anns = method.getAnnotations(); - if (anns == null) { - return false; - } - for (Annotation ann : anns) { - String name = ann.annotationType().getName(); - if (name.endsWith("Anno")) { - return true; - } - } - return false; + return method.isAnnotationPresent(Anno.class); } @Override public List filter(List methods) { - filterCalled = true; + this.filterCalled = true; List forRemoval = new ArrayList<>(); - for (Method method: methods) { - if (removeIfNotAnnotated && !isAnnotated(method)) { - forRemoval.add(method); - } + if (this.removeIfNotAnnotated) { + methods.stream().filter(method -> !isAnnotated(method)).forEach(forRemoval::add); } for (Method method: forRemoval) { methods.remove(method); @@ -495,7 +482,7 @@ class MethodInvocationTests extends AbstractExpressionTests { @Anno public String doit(double d) { - return "double "+d; + return "double " + d; } }