PIG-5238: Fix datetime related test issues after PIG-4748 (szita)
git-svn-id: https://svn.apache.org/repos/asf/pig/trunk@1796140 13f79535-47bb-0310-9956-ffa450edef68
diff --git a/CHANGES.txt b/CHANGES.txt
index efa6ba4..2a3683d 100644
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@ -101,6 +101,8 @@
BUG FIXES
+PIG-5238: Fix datetime related test issues after PIG-4748 (szita)
+
PIG-5185: Job name show "DefaultJobName" when running a Python script (daijy)
PIG-4748: DateTimeWritable forgets Chronology (szita)
diff --git a/test/org/apache/pig/test/TestDateTime.java b/test/org/apache/pig/test/TestDateTime.java
index e3e0ee7..3e9c0a8 100644
--- a/test/org/apache/pig/test/TestDateTime.java
+++ b/test/org/apache/pig/test/TestDateTime.java
@@ -159,11 +159,16 @@
*/
@Test
public void testDateTimeZoneOnCluster() throws Exception {
+
+ String localDateTime = "2001-01-01T01:00:00.000";
+ String localDateTimeDST = "2002-07-01T01:00:00.000";
+
String inputFileName = "testDateTime-input.txt";
String[] inputData = new String[]{ "1\t1990-01-04T12:30:00.000+01:00",
"2\t1990-01-04T11:30:00.000Z",
- "3\t2001-01-01T01:00:00.000",
- "4\t2017-02-02T15:19:00.000+01:00"
+ "3\t"+localDateTime,
+ "4\t"+localDateTimeDST,
+ "5\t2017-02-02T15:19:00.000+01:00"
};
Util.createInputFile(cluster, inputFileName, inputData);
@@ -175,14 +180,19 @@
Iterator<Tuple> it = pigServer.openIterator("C");
- //Should return last 3 rows from input
- String sysTZOffset = DateTimeZone.forOffsetMillis(DateTime.now().getZone().getOffset(0L)).toString();
+ //Should return last 4 rows from input
+ String tzOffsetForLocal = DateTimeZone.forOffsetMillis(DateTime.now().getZone().getOffset(new DateTime(localDateTime))).toString();
+ String tzOffsetDSTForLocal = DateTimeZone.forOffsetMillis(DateTime.now().getZone().getOffset(new DateTime(localDateTimeDST))).toString();
+ tzOffsetForLocal = tzOffsetForLocal.replaceAll("UTC","Z");
+ tzOffsetDSTForLocal = tzOffsetDSTForLocal.replaceAll("UTC","Z");
+
Util.checkQueryOutputsAfterSortRecursive(
it,
new String[]{
"(1990-01-04T11:30:00.000Z,2)",
- "(2001-01-01T01:00:00.000"+sysTZOffset+",3)",
- "(2017-02-02T15:19:00.000+01:00,4)"
+ "(2001-01-01T01:00:00.000"+tzOffsetForLocal+",3)",
+ "(2002-07-01T01:00:00.000"+tzOffsetDSTForLocal+",4)",
+ "(2017-02-02T15:19:00.000+01:00,5)"
},
org.apache.pig.newplan.logical.Util.translateSchema(pigServer.dumpSchema("C")));
}
diff --git a/test/org/apache/pig/test/TestPackage.java b/test/org/apache/pig/test/TestPackage.java
index 903be1e..d7d5412 100644
--- a/test/org/apache/pig/test/TestPackage.java
+++ b/test/org/apache/pig/test/TestPackage.java
@@ -34,6 +34,7 @@
import java.util.Random;
import org.apache.pig.backend.executionengine.ExecException;
+import org.apache.pig.backend.hadoop.DateTimeWritable;
import org.apache.pig.backend.hadoop.HDataType;
import org.apache.pig.backend.hadoop.executionengine.physicalLayer.POStatus;
import org.apache.pig.backend.hadoop.executionengine.physicalLayer.Result;
@@ -171,6 +172,7 @@
runTest(r.nextLong(), inner, DataType.LONG);
break;
case DataType.DATETIME:
+ DateTimeWritable.setupAvailableZoneIds();
runTest(new DateTime(r.nextLong()), inner, DataType.DATETIME);
break;
case DataType.MAP: