TeStereo report

@Test public void testGetOverrideHierarchyIncludingInterfaces(){ final Method method=MethodUtils.getAccessibleMethod(StringParameterizedChild.class,"consume",String.class); final Iterator expected=Arrays.asList(new MethodDescriptor(StringParameterizedChild.class,"consume",String.class),new MethodDescriptor(GenericParent.class,"consume",GenericParent.class.getTypeParameters()[0]),new MethodDescriptor(GenericConsumer.class,"consume",GenericConsumer.class.getTypeParameters()[0])).iterator(); for ( final Method m : MethodUtils.getOverrideHierarchy(method,Interfaces.INCLUDE)) { assertTrue(expected.hasNext()); final MethodDescriptor md=expected.next(); assertEquals(md.declaringClass,m.getDeclaringClass()); assertEquals(md.name,m.getName()); assertEquals(md.parameterTypes.length,m.getParameterTypes().length); for (int i=0; i < md.parameterTypes.length; i++) { assertTrue(TypeUtils.equals(md.parameterTypes[i],m.getGenericParameterTypes()[i])); } } assertFalse(expected.hasNext()); }