use of org.apache.flink.test.operators.util.CollectionDataSets.CustomType in project flink by apache.
the class JoinITCase method testJoinOnACustomTypeInputWithKeyExtractorAndATupleInputWithKeyFieldSelector.
@Test
public void testJoinOnACustomTypeInputWithKeyExtractorAndATupleInputWithKeyFieldSelector() throws Exception {
/*
* Join on a tuple input with key field selector and a custom type input with key extractor
*/
final ExecutionEnvironment env = ExecutionEnvironment.getExecutionEnvironment();
DataSet<CustomType> ds1 = CollectionDataSets.getSmallCustomTypeDataSet(env);
DataSet<Tuple3<Integer, Long, String>> ds2 = CollectionDataSets.get3TupleDataSet(env);
DataSet<Tuple2<String, String>> joinDs = ds1.join(ds2).where(new KeySelector1()).equalTo(0).with(new CustT3Join());
List<Tuple2<String, String>> result = joinDs.collect();
String expected = "Hi,Hi\n" + "Hello,Hello\n" + "Hello world,Hello\n";
compareResultAsTuples(result, expected);
}
use of org.apache.flink.test.operators.util.CollectionDataSets.CustomType in project flink by apache.
the class JoinITCase method testDefaultJoinOnTwoCustomTypeInputsWithKeyExtractors.
@Test
public void testDefaultJoinOnTwoCustomTypeInputsWithKeyExtractors() throws Exception {
/*
* (Default) Join on two custom type inputs with key extractors
*/
final ExecutionEnvironment env = ExecutionEnvironment.getExecutionEnvironment();
DataSet<CustomType> ds1 = CollectionDataSets.getCustomTypeDataSet(env);
DataSet<CustomType> ds2 = CollectionDataSets.getSmallCustomTypeDataSet(env);
DataSet<Tuple2<CustomType, CustomType>> joinDs = ds1.join(ds2).where(new KeySelector5()).equalTo(new KeySelector6());
List<Tuple2<CustomType, CustomType>> result = joinDs.collect();
String expected = "1,0,Hi,1,0,Hi\n" + "2,1,Hello,2,1,Hello\n" + "2,1,Hello,2,2,Hello world\n" + "2,2,Hello world,2,1,Hello\n" + "2,2,Hello world,2,2,Hello world\n";
compareResultAsTuples(result, expected);
}
use of org.apache.flink.test.operators.util.CollectionDataSets.CustomType in project flink by apache.
the class CrossITCase method testCorrectnessOfCrossATupleInputAndACustomTypeInput.
@Test
public void testCorrectnessOfCrossATupleInputAndACustomTypeInput() throws Exception {
/*
* check correctness of cross a tuple input and a custom type input
*/
final ExecutionEnvironment env = ExecutionEnvironment.getExecutionEnvironment();
DataSet<Tuple5<Integer, Long, Integer, String, Long>> ds = CollectionDataSets.getSmall5TupleDataSet(env);
DataSet<CustomType> ds2 = CollectionDataSets.getSmallCustomTypeDataSet(env);
DataSet<Tuple3<Integer, Long, String>> crossDs = ds.cross(ds2).with(new MixedCross());
List<Tuple3<Integer, Long, String>> result = crossDs.collect();
String expected = "2,0,HalloHi\n" + "3,0,HalloHello\n" + "3,0,HalloHello world\n" + "3,0,Hallo WeltHi\n" + "4,1,Hallo WeltHello\n" + "4,2,Hallo WeltHello world\n" + "3,0,Hallo Welt wieHi\n" + "4,2,Hallo Welt wieHello\n" + "4,4,Hallo Welt wieHello world\n";
compareResultAsTuples(result, expected);
}
use of org.apache.flink.test.operators.util.CollectionDataSets.CustomType in project flink by apache.
the class CoGroupITCase method testCoGroupOnACustomTypeWithKeyExtractorAndATupleInputWithKeyFieldSelector.
@Test
public void testCoGroupOnACustomTypeWithKeyExtractorAndATupleInputWithKeyFieldSelector() throws Exception {
/*
* CoGroup on a tuple input with key field selector and a custom type input with key extractor
*/
final ExecutionEnvironment env = ExecutionEnvironment.getExecutionEnvironment();
DataSet<Tuple5<Integer, Long, Integer, String, Long>> ds = CollectionDataSets.get5TupleDataSet(env);
DataSet<CustomType> ds2 = CollectionDataSets.getCustomTypeDataSet(env);
DataSet<CustomType> coGroupDs = ds2.coGroup(ds).where(new KeySelector3()).equalTo(2).with(new MixedCoGroup2());
List<CustomType> result = coGroupDs.collect();
String expected = "0,1,test\n" + "1,2,test\n" + "2,5,test\n" + "3,15,test\n" + "4,33,test\n" + "5,63,test\n" + "6,109,test\n" + "7,4,test\n" + "8,4,test\n" + "9,4,test\n" + "10,5,test\n" + "11,5,test\n" + "12,5,test\n" + "13,5,test\n" + "14,5,test\n";
compareResultAsText(result, expected);
}
use of org.apache.flink.test.operators.util.CollectionDataSets.CustomType in project flink by apache.
the class CoGroupITCase method testCoGroupTwoCustomTypeInputsWithExpressionKeys.
@Test
public void testCoGroupTwoCustomTypeInputsWithExpressionKeys() throws Exception {
/*
* CoGroup on two custom type inputs using expression keys
*/
final ExecutionEnvironment env = ExecutionEnvironment.getExecutionEnvironment();
DataSet<CustomType> ds = CollectionDataSets.getCustomTypeDataSet(env);
DataSet<CustomType> ds2 = CollectionDataSets.getCustomTypeDataSet(env);
DataSet<CustomType> coGroupDs = ds.coGroup(ds2).where("myInt").equalTo("myInt").with(new CustomTypeCoGroup());
List<CustomType> result = coGroupDs.collect();
String expected = "1,0,test\n" + "2,6,test\n" + "3,24,test\n" + "4,60,test\n" + "5,120,test\n" + "6,210,test\n";
compareResultAsText(result, expected);
}
Aggregations