@SuppressWarnings({ "rawtypes", "unchecked" })

@Test
public void testCustomArrayWithTypeVariable() {
	RichMapFunction<CustomArrayObject2<Boolean>[], ?> function = new IdentityMapper<CustomArrayObject2<Boolean>[]>();
	TypeInformation<?> ti = TypeExtractor.getMapReturnTypes(function, (TypeInformation) TypeInfoParser.parse("Tuple1<Boolean>[]"));
	Assert.assertTrue(ti instanceof ObjectArrayTypeInfo<?, ?>);
	ObjectArrayTypeInfo<?, ?> oati = (ObjectArrayTypeInfo<?, ?>) ti;
	Assert.assertTrue(oati.getComponentInfo().isTupleType());
	TupleTypeInfo<?> tti = (TupleTypeInfo<?>) oati.getComponentInfo();
	Assert.assertEquals(BasicTypeInfo.BOOLEAN_TYPE_INFO, tti.getTypeAt(0));
}