@Test
public void getArrayItemType_genericCollection() {

  class Foo extends Base<Collection<String>> {}
  ParameterizedType type = (ParameterizedType) Foo.class.getGenericSuperclass();
  assertThat(Types.getArrayItemType(TypeToken.of(type.getActualTypeArguments()[0])))
      .isEqualTo(STRING);
}