|
|
|
|
@ -24,7 +24,6 @@ import java.rmi.RemoteException;
@@ -24,7 +24,6 @@ import java.rmi.RemoteException;
|
|
|
|
|
import java.util.ArrayList; |
|
|
|
|
import java.util.List; |
|
|
|
|
|
|
|
|
|
import org.junit.jupiter.api.Disabled; |
|
|
|
|
import org.junit.jupiter.api.Test; |
|
|
|
|
|
|
|
|
|
import org.springframework.tests.sample.objects.TestObject; |
|
|
|
|
@ -228,16 +227,15 @@ class ReflectionUtilsTests {
@@ -228,16 +227,15 @@ class ReflectionUtilsTests {
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
@Test |
|
|
|
|
void findMethod() throws Exception { |
|
|
|
|
void findMethod() { |
|
|
|
|
assertThat(ReflectionUtils.findMethod(B.class, "bar", String.class)).isNotNull(); |
|
|
|
|
assertThat(ReflectionUtils.findMethod(B.class, "foo", Integer.class)).isNotNull(); |
|
|
|
|
assertThat(ReflectionUtils.findMethod(B.class, "getClass")).isNotNull(); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
@Disabled("[SPR-8644] findMethod() does not currently support var-args") |
|
|
|
|
@Test |
|
|
|
|
void findMethodWithVarArgs() throws Exception { |
|
|
|
|
assertThat(ReflectionUtils.findMethod(B.class, "add", int.class, int.class, int.class)).isNotNull(); |
|
|
|
|
void findMethodWithVarArgs() { |
|
|
|
|
assertThat(ReflectionUtils.findMethod(B.class, "add", int[].class)).isNotNull(); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
@Test |
|
|
|
|
@ -279,37 +277,27 @@ class ReflectionUtilsTests {
@@ -279,37 +277,27 @@ class ReflectionUtilsTests {
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
@Test |
|
|
|
|
void getAllDeclaredMethods() throws Exception { |
|
|
|
|
void getAllDeclaredMethods() { |
|
|
|
|
class Foo { |
|
|
|
|
@Override |
|
|
|
|
public String toString() { |
|
|
|
|
return super.toString(); |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
int toStringMethodCount = 0; |
|
|
|
|
for (Method method : ReflectionUtils.getAllDeclaredMethods(Foo.class)) { |
|
|
|
|
if (method.getName().equals("toString")) { |
|
|
|
|
toStringMethodCount++; |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
assertThat(toStringMethodCount).isEqualTo(2); |
|
|
|
|
Method[] allDeclaredMethods = ReflectionUtils.getAllDeclaredMethods(Foo.class); |
|
|
|
|
assertThat(allDeclaredMethods).extracting(Method::getName).filteredOn("toString"::equals).hasSize(2); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
@Test |
|
|
|
|
void getUniqueDeclaredMethods() throws Exception { |
|
|
|
|
void getUniqueDeclaredMethods() { |
|
|
|
|
class Foo { |
|
|
|
|
@Override |
|
|
|
|
public String toString() { |
|
|
|
|
return super.toString(); |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
int toStringMethodCount = 0; |
|
|
|
|
for (Method method : ReflectionUtils.getUniqueDeclaredMethods(Foo.class)) { |
|
|
|
|
if (method.getName().equals("toString")) { |
|
|
|
|
toStringMethodCount++; |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
assertThat(toStringMethodCount).isEqualTo(1); |
|
|
|
|
Method[] uniqueDeclaredMethods = ReflectionUtils.getUniqueDeclaredMethods(Foo.class); |
|
|
|
|
assertThat(uniqueDeclaredMethods).extracting(Method::getName).filteredOn("toString"::equals).hasSize(1); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
@Test |
|
|
|
|
@ -326,16 +314,10 @@ class ReflectionUtilsTests {
@@ -326,16 +314,10 @@ class ReflectionUtilsTests {
|
|
|
|
|
return Integer.valueOf(42); |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
int m1MethodCount = 0; |
|
|
|
|
Method[] methods = ReflectionUtils.getUniqueDeclaredMethods(Leaf.class); |
|
|
|
|
for (Method method : methods) { |
|
|
|
|
if (method.getName().equals("m1")) { |
|
|
|
|
m1MethodCount++; |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
assertThat(m1MethodCount).isEqualTo(1); |
|
|
|
|
assertThat(ObjectUtils.containsElement(methods, Leaf.class.getMethod("m1"))).isTrue(); |
|
|
|
|
assertThat(ObjectUtils.containsElement(methods, Parent.class.getMethod("m1"))).isFalse(); |
|
|
|
|
assertThat(methods).extracting(Method::getName).filteredOn("m1"::equals).hasSize(1); |
|
|
|
|
assertThat(methods).contains(Leaf.class.getMethod("m1")); |
|
|
|
|
assertThat(methods).doesNotContain(Parent.class.getMethod("m1")); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
@Test |
|
|
|
|
|