Skip to content

Commit

Permalink
test: stronger check for safe cast convertability
Browse files Browse the repository at this point in the history
  • Loading branch information
vbarua committed Mar 11, 2024
1 parent 8eb0f98 commit f54ed40
Showing 1 changed file with 16 additions and 2 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@

import io.substrait.dsl.SubstraitBuilder;
import io.substrait.expression.Expression;
import io.substrait.expression.ExpressionCreator;
import io.substrait.expression.proto.ExpressionProtoConverter;
import io.substrait.extension.ExtensionCollector;
import io.substrait.isthmus.expression.ExpressionRexConverter;
Expand Down Expand Up @@ -106,8 +107,21 @@ public void switchExpression() {
}

@Test
public void castFailureCondition() throws IOException, SqlParseException {
assertProtoPlanRoundrip("SELECT CAST(25.65 AS varchar)");
public void castFailureCondition() {
Rel rel =
b.project(
input ->
List.of(
ExpressionCreator.cast(
R.I64,
b.fieldReference(input, 0),
Expression.FailureBehavior.THROW_EXCEPTION),
ExpressionCreator.cast(
R.I64, b.fieldReference(input, 0), Expression.FailureBehavior.RETURN_NULL)),
b.remap(1, 2),
b.namedScan(List.of("test"), List.of("col1"), List.of(R.STRING)));

assertFullRoundTrip(rel);
}

void assertExpressionEquality(Expression expected, Expression actual) {
Expand Down

0 comments on commit f54ed40

Please sign in to comment.