1+ /*
2+ * Licensed to the Apache Software Foundation (ASF) under one or more
3+ * contributor license agreements. See the NOTICE file distributed with
4+ * this work for additional information regarding copyright ownership.
5+ * The ASF licenses this file to You under the Apache License, Version 2.0
6+ * (the "License"); you may not use this file except in compliance with
7+ * the License. You may obtain a copy of the License at
8+ *
9+ * http://www.apache.org/licenses/LICENSE-2.0
10+ *
11+ * Unless required by applicable law or agreed to in writing, software
12+ * distributed under the License is distributed on an "AS IS" BASIS,
13+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14+ * See the License for the specific language governing permissions and
15+ * limitations under the License.
16+ */
17+
18+ package org .apache .spark .sql
19+
20+ import java .sql .{Date , Timestamp }
21+
22+ class DataFrameDateTimeSuite extends QueryTest {
23+
24+ private lazy val ctx = org.apache.spark.sql.test.TestSQLContext
25+ import ctx .implicits ._
26+
27+ test(" timestamp comparison with date strings" ) {
28+ val df = Seq (
29+ (1 , Timestamp .valueOf(" 2015-01-01 00:00:00" )),
30+ (2 , Timestamp .valueOf(" 2014-01-01 00:00:00" ))).toDF(" i" , " t" )
31+
32+ checkAnswer(
33+ df.select(" t" ).filter($" t" <= " 2014-06-01" ),
34+ Row (Timestamp .valueOf(" 2014-01-01 00:00:00" )) :: Nil )
35+
36+
37+ checkAnswer(
38+ df.select(" t" ).filter($" t" >= " 2014-06-01" ),
39+ Row (Timestamp .valueOf(" 2015-01-01 00:00:00" )) :: Nil )
40+ }
41+
42+ test(" date comparison with date strings" ) {
43+ val df = Seq (
44+ (1 , Date .valueOf(" 2015-01-01" )),
45+ (2 , Date .valueOf(" 2014-01-01" ))).toDF(" i" , " t" )
46+
47+ checkAnswer(
48+ df.select(" t" ).filter($" t" <= " 2014-06-01" ),
49+ Row (Date .valueOf(" 2014-01-01" )) :: Nil )
50+
51+
52+ checkAnswer(
53+ df.select(" t" ).filter($" t" >= " 2014-06-01" ),
54+ Row (Date .valueOf(" 2015-01-01" )) :: Nil )
55+ }
56+ }
0 commit comments