Beispiel #1
0
 /**
  * Asserts that arguments can be resolved from a method reference when declared on a subclass of
  * some type.
  */
 public void shouldResolveSubclassArgumentsForMethodRefs() {
   FnSubclass<String, Integer> fn = Integer::valueOf;
   assertEquals(
       TypeResolver.resolveRawArguments(Function.class, fn.getClass()),
       new Class<?>[] {String.class, Integer.class});
 }
Beispiel #2
0
 /**
  * Asserts that arguments can be resolved from a lambda expression when declared on a subclass of
  * some type.
  */
 public void shouldResolveSubclassArguments() {
   FnSubclass<String, Integer> fn = str -> Integer.valueOf(str);
   assertEquals(
       TypeResolver.resolveRawArguments(Function.class, fn.getClass()),
       new Class<?>[] {String.class, Integer.class});
 }