asolimando commented on a change in pull request #2613:
URL: https://github.com/apache/calcite/pull/2613#discussion_r764735775



##########
File path: core/src/test/java/org/apache/calcite/test/RelMetadataTest.java
##########
@@ -2482,6 +2482,41 @@ private void checkPredicates(RelOptCluster cluster, 
RelOptTable empTable,
     assertThat(inputRef1.getIdentifier(), is(inputRef2.getIdentifier()));
   }
 
+  @Test void testExpressionLineageConjuntiveExpression() {
+    // empno is column 0 in catalog.sales.emp
+    // ename is column 1 in catalog.sales.emp
+    // deptno is column 7 in catalog.sales.emp
+    final RelNode rel = convertSql("select (empno = 1 or ename = 'abc') and 
deptno > 1 from emp");
+    final RelMetadataQuery mq = rel.getCluster().getMetadataQuery();
+
+    final RexNode ref = RexInputRef.of(0, rel.getRowType().getFieldList());
+    final Set<RexNode> r = mq.getExpressionLineage(rel, ref);
+    assertThat(r.size(), is(1));

Review comment:
       I have replaced the assertion with the use of 
`Iterables.getOnlyElement`, that is: `String actualExp = 
Iterables.getOnlyElement(r).toString();`
   
   `Iterables.getOnlyElement` states explicitly that we were expecting a single 
element and we got a different number, I think it conveys the intention in case 
of failures and it keeps the test compact.




-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


Reply via email to