use of org.apache.flink.api.java.ExecutionEnvironment in project flink by apache.
the class CoGroupOperatorTest method testCoGroupKeyExpressions3Nested.
@Test(expected = InvalidProgramException.class)
public void testCoGroupKeyExpressions3Nested() {
final ExecutionEnvironment env = ExecutionEnvironment.getExecutionEnvironment();
DataSet<CustomType> ds1 = env.fromCollection(customTypeData);
DataSet<CustomType> ds2 = env.fromCollection(customTypeData);
// should not work, incompatible number of cogroup keys
ds1.coGroup(ds2).where("nested.myInt", "nested.myString").equalTo("nested.myString");
}
use of org.apache.flink.api.java.ExecutionEnvironment in project flink by apache.
the class CoGroupOperatorTest method testCoGroupKeyAtomicExpression2.
@Test
public void testCoGroupKeyAtomicExpression2() {
final ExecutionEnvironment env = ExecutionEnvironment.getExecutionEnvironment();
DataSet<Integer> ds1 = env.fromElements(0, 0, 1);
DataSet<CustomType> ds2 = env.fromCollection(customTypeData);
ds1.coGroup(ds2).where("*").equalTo("myInt");
}
use of org.apache.flink.api.java.ExecutionEnvironment in project flink by apache.
the class CoGroupOperatorTest method testCoGroupKeyAtomicInvalidExpression5.
@Test(expected = InvalidProgramException.class)
public void testCoGroupKeyAtomicInvalidExpression5() {
final ExecutionEnvironment env = ExecutionEnvironment.getExecutionEnvironment();
DataSet<ArrayList<Integer>> ds1 = env.fromElements(new ArrayList<Integer>());
DataSet<Integer> ds2 = env.fromElements(0, 0, 0);
ds1.coGroup(ds2).where("*");
}
use of org.apache.flink.api.java.ExecutionEnvironment in project flink by apache.
the class CoGroupOperatorTest method testCoGroupKeyExpressions3.
@Test(expected = InvalidProgramException.class)
public void testCoGroupKeyExpressions3() {
final ExecutionEnvironment env = ExecutionEnvironment.getExecutionEnvironment();
DataSet<CustomType> ds1 = env.fromCollection(customTypeData);
DataSet<CustomType> ds2 = env.fromCollection(customTypeData);
// should not work, incompatible number of cogroup keys
ds1.coGroup(ds2).where("myInt", "myString").equalTo("myString");
}
use of org.apache.flink.api.java.ExecutionEnvironment in project flink by apache.
the class CoGroupOperatorTest method testSemanticPropsWithKeySelector1.
@Test
public void testSemanticPropsWithKeySelector1() {
final ExecutionEnvironment env = ExecutionEnvironment.getExecutionEnvironment();
DataSet<Tuple5<Integer, Long, String, Long, Integer>> tupleDs1 = env.fromCollection(emptyTupleData, tupleTypeInfo);
DataSet<Tuple5<Integer, Long, String, Long, Integer>> tupleDs2 = env.fromCollection(emptyTupleData, tupleTypeInfo);
CoGroupOperator<?, ?, ?> coGroupOp = tupleDs1.coGroup(tupleDs2).where(new DummyTestKeySelector()).equalTo(new DummyTestKeySelector()).with(new DummyTestCoGroupFunction1());
SemanticProperties semProps = coGroupOp.getSemanticProperties();
assertTrue(semProps.getForwardingTargetFields(0, 0).size() == 0);
assertTrue(semProps.getForwardingTargetFields(0, 1).size() == 0);
assertTrue(semProps.getForwardingTargetFields(0, 2).size() == 1);
assertTrue(semProps.getForwardingTargetFields(0, 2).contains(4));
assertTrue(semProps.getForwardingTargetFields(0, 3).size() == 2);
assertTrue(semProps.getForwardingTargetFields(0, 3).contains(1));
assertTrue(semProps.getForwardingTargetFields(0, 3).contains(3));
assertTrue(semProps.getForwardingTargetFields(0, 4).size() == 0);
assertTrue(semProps.getForwardingTargetFields(0, 5).size() == 0);
assertTrue(semProps.getForwardingTargetFields(0, 6).size() == 0);
assertTrue(semProps.getForwardingTargetFields(1, 0).size() == 0);
assertTrue(semProps.getForwardingTargetFields(1, 1).size() == 0);
assertTrue(semProps.getForwardingTargetFields(1, 2).size() == 0);
assertTrue(semProps.getForwardingTargetFields(1, 3).size() == 0);
assertTrue(semProps.getForwardingTargetFields(1, 4).size() == 1);
assertTrue(semProps.getForwardingTargetFields(1, 4).contains(2));
assertTrue(semProps.getForwardingTargetFields(1, 5).size() == 0);
assertTrue(semProps.getForwardingTargetFields(1, 6).size() == 1);
assertTrue(semProps.getForwardingTargetFields(1, 6).contains(0));
assertTrue(semProps.getReadFields(0).size() == 3);
assertTrue(semProps.getReadFields(0).contains(2));
assertTrue(semProps.getReadFields(0).contains(4));
assertTrue(semProps.getReadFields(0).contains(6));
assertTrue(semProps.getReadFields(1).size() == 2);
assertTrue(semProps.getReadFields(1).contains(3));
assertTrue(semProps.getReadFields(1).contains(5));
}
Aggregations