@Test
public void replaceTypeParameter1() throws Exception {

  String name = "java.util.function.Function<? super String, ? extends R>";
  Map<String, String> map = new HashMap<>();
  map.putIfAbsent("R", "java.util.stream.Stream<String>");
  final String s = ClassNameUtils.replaceTypeParameter(name, map);
  assertEquals(
      "java.util.function.Function<? super String, ? extends java.util.stream.Stream<String>>",
      s);
}