Skip to content

Commit 423a938

Browse files
committed
Make suite more readable
1 parent 7946bea commit 423a938

File tree

1 file changed

+38
-27
lines changed

1 file changed

+38
-27
lines changed

sql/core/src/test/scala/org/apache/spark/sql/execution/datasources/parquet/ParquetFilterSuite.scala

Lines changed: 38 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -316,35 +316,46 @@ class ParquetFilterSuite extends QueryTest with ParquetTest with SharedSQLContex
316316
}
317317

318318
test("filter pushdown - date") {
319-
implicit class IntToDate(int: Int) {
320-
def date: Date =
321-
new Date(Date.valueOf("2018-03-01").getTime + 24 * 60 * 60 * 1000 * (int - 1))
319+
implicit class StringToDate(s: String) {
320+
def date: Date = Date.valueOf(s)
322321
}
323322

324-
withParquetDataFrame((1 to 4).map(i => Tuple1(i.date))) { implicit df =>
325-
checkFilterPredicate('_1.isNull, classOf[Eq[_]], Seq.empty[Row])
326-
checkFilterPredicate('_1.isNotNull, classOf[NotEq[_]], (1 to 4).map(i => Row.apply(i.date)))
327-
328-
checkFilterPredicate('_1 === 1.date, classOf[Eq[_]], 1.date)
329-
checkFilterPredicate('_1 <=> 1.date, classOf[Eq[_]], 1.date)
330-
checkFilterPredicate('_1 =!= 1.date, classOf[NotEq[_]], (2 to 4).map(i => Row.apply(i.date)))
331-
332-
checkFilterPredicate('_1 < 2.date, classOf[Lt[_]], 1.date)
333-
checkFilterPredicate('_1 > 3.date, classOf[Gt[_]], 4.date)
334-
checkFilterPredicate('_1 <= 1.date, classOf[LtEq[_]], 1.date)
335-
checkFilterPredicate('_1 >= 4.date, classOf[GtEq[_]], 4.date)
336-
337-
checkFilterPredicate(Literal(1.date) === '_1, classOf[Eq[_]], 1.date)
338-
checkFilterPredicate(Literal(1.date) <=> '_1, classOf[Eq[_]], 1.date)
339-
checkFilterPredicate(Literal(2.date) > '_1, classOf[Lt[_]], 1.date)
340-
checkFilterPredicate(Literal(3.date) < '_1, classOf[Gt[_]], 4.date)
341-
checkFilterPredicate(Literal(1.date) >= '_1, classOf[LtEq[_]], 1.date)
342-
checkFilterPredicate(Literal(4.date) <= '_1, classOf[GtEq[_]], 4.date)
343-
344-
checkFilterPredicate(!('_1 < 4.date), classOf[GtEq[_]], 4.date)
345-
checkFilterPredicate('_1 < 2.date || '_1 > 3.date, classOf[Operators.Or],
346-
Seq(Row(1.date), Row(4.date)))
347-
}
323+
withParquetDataFrame(
324+
Seq("2018-03-18", "2018-03-19", "2018-03-20", "2018-03-21").map(i => Tuple1(i.date))) {
325+
implicit df =>
326+
checkFilterPredicate('_1.isNull, classOf[Eq[_]], Seq.empty[Row])
327+
checkFilterPredicate('_1.isNotNull, classOf[NotEq[_]],
328+
Seq("2018-03-18", "2018-03-19", "2018-03-20", "2018-03-21").map(i => Row.apply(i.date)))
329+
330+
checkFilterPredicate('_1 === "2018-03-18".date, classOf[Eq[_]], "2018-03-18".date)
331+
checkFilterPredicate('_1 <=> "2018-03-18".date, classOf[Eq[_]], "2018-03-18".date)
332+
checkFilterPredicate('_1 =!= "2018-03-18".date, classOf[NotEq[_]],
333+
Seq("2018-03-19", "2018-03-20", "2018-03-21").map(i => Row.apply(i.date)))
334+
335+
checkFilterPredicate('_1 < "2018-03-19".date, classOf[Lt[_]], "2018-03-18".date)
336+
checkFilterPredicate('_1 > "2018-03-20".date, classOf[Gt[_]], "2018-03-21".date)
337+
checkFilterPredicate('_1 <= "2018-03-18".date, classOf[LtEq[_]], "2018-03-18".date)
338+
checkFilterPredicate('_1 >= "2018-03-21".date, classOf[GtEq[_]], "2018-03-21".date)
339+
340+
checkFilterPredicate(
341+
Literal("2018-03-18".date) === '_1, classOf[Eq[_]], "2018-03-18".date)
342+
checkFilterPredicate(
343+
Literal("2018-03-18".date) <=> '_1, classOf[Eq[_]], "2018-03-18".date)
344+
checkFilterPredicate(
345+
Literal("2018-03-19".date) > '_1, classOf[Lt[_]], "2018-03-18".date)
346+
checkFilterPredicate(
347+
Literal("2018-03-20".date) < '_1, classOf[Gt[_]], "2018-03-21".date)
348+
checkFilterPredicate(
349+
Literal("2018-03-18".date) >= '_1, classOf[LtEq[_]], "2018-03-18".date)
350+
checkFilterPredicate(
351+
Literal("2018-03-21".date) <= '_1, classOf[GtEq[_]], "2018-03-21".date)
352+
353+
checkFilterPredicate(!('_1 < "2018-03-21".date), classOf[GtEq[_]], "2018-03-21".date)
354+
checkFilterPredicate(
355+
'_1 < "2018-03-19".date || '_1 > "2018-03-20".date,
356+
classOf[Operators.Or],
357+
Seq(Row("2018-03-18".date), Row("2018-03-21".date)))
358+
}
348359
}
349360

350361
test("SPARK-6554: don't push down predicates which reference partition columns") {

0 commit comments

Comments
 (0)