public static Map<String, PartitionColumnFilter> convertColumnFilter(List<ScalarOperator> predicates) {
        return convertColumnFilter(predicates, null);
    }
@Test
    public void testIsNullOnCastColumn() {
        {
            // cast(c0 as smallint) is null.
            IsNullPredicateOperator isNullPredicate = new IsNullPredicateOperator(false,
                    new CastOperator(Type.SMALLINT, new ColumnRefOperator(1, Type.INT, "c0", true)));
            List<ScalarOperator> list = Lists.newArrayList(isNullPredicate);
            Map<String, PartitionColumnFilter> result = ColumnFilterConverter.convertColumnFilter(list);
            assertEquals(result.size(), 0);
        }
        {
            // c0 is null.
            IsNullPredicateOperator isNullPredicate =
                    new IsNullPredicateOperator(false, new ColumnRefOperator(1, Type.INT, "c0", true));
            List<ScalarOperator> list = Lists.newArrayList(isNullPredicate);
            Map<String, PartitionColumnFilter> result = ColumnFilterConverter.convertColumnFilter(list);
            assertEquals(result.size(), 1);
            PartitionColumnFilter filter = result.get("c0");
            assertEquals(filter.getLowerBound(), new NullLiteral());
            assertEquals(filter.getUpperBound(), new NullLiteral());
        }
    }