@@ -472,39 +472,52 @@ class DateTimeUtilsSuite extends SparkFunSuite {
472472 assert(toJavaTimestamp(fromUTCTime(fromJavaTimestamp(Timestamp .valueOf(utc)), tz)).toString
473473 === expected)
474474 }
475- test(" 2011-12-25 09:00:00.123456" , " UTC" , " 2011-12-25 09:00:00.123456" )
476- test(" 2011-12-25 09:00:00.123456" , " JST" , " 2011-12-25 18:00:00.123456" )
477- test(" 2011-12-25 09:00:00.123456" , " PST" , " 2011-12-25 01:00:00.123456" )
478- test(" 2011-12-25 09:00:00.123456" , " Asia/Shanghai" , " 2011-12-25 17:00:00.123456" )
479-
480- // Daylight Saving Time
481- test(" 2016-03-13 09:59:59.0" , " PST" , " 2016-03-13 01:59:59.0" )
482- test(" 2016-03-13 10:00:00.0" , " PST" , " 2016-03-13 03:00:00.0" )
483- test(" 2016-11-06 08:59:59.0" , " PST" , " 2016-11-06 01:59:59.0" )
484- test(" 2016-11-06 09:00:00.0" , " PST" , " 2016-11-06 01:00:00.0" )
485- test(" 2016-11-06 10:00:00.0" , " PST" , " 2016-11-06 02:00:00.0" )
475+ for (tz <- DateTimeTestUtils .ALL_TIMEZONES ) {
476+ DateTimeTestUtils .withDefaultTimeZone(tz) {
477+ test(" 2011-12-25 09:00:00.123456" , " UTC" , " 2011-12-25 09:00:00.123456" )
478+ test(" 2011-12-25 09:00:00.123456" , " JST" , " 2011-12-25 18:00:00.123456" )
479+ test(" 2011-12-25 09:00:00.123456" , " PST" , " 2011-12-25 01:00:00.123456" )
480+ test(" 2011-12-25 09:00:00.123456" , " Asia/Shanghai" , " 2011-12-25 17:00:00.123456" )
481+ }
482+ }
483+
484+ DateTimeTestUtils .withDefaultTimeZone(TimeZone .getTimeZone(" PST" )) {
485+ // Daylight Saving Time
486+ test(" 2016-03-13 09:59:59.0" , " PST" , " 2016-03-13 01:59:59.0" )
487+ test(" 2016-03-13 10:00:00.0" , " PST" , " 2016-03-13 03:00:00.0" )
488+ test(" 2016-11-06 08:59:59.0" , " PST" , " 2016-11-06 01:59:59.0" )
489+ test(" 2016-11-06 09:00:00.0" , " PST" , " 2016-11-06 01:00:00.0" )
490+ test(" 2016-11-06 10:00:00.0" , " PST" , " 2016-11-06 02:00:00.0" )
491+ }
486492 }
487493
488494 test(" to UTC timestamp" ) {
489495 def test (utc : String , tz : String , expected : String ): Unit = {
490496 assert(toJavaTimestamp(toUTCTime(fromJavaTimestamp(Timestamp .valueOf(utc)), tz)).toString
491497 === expected)
492498 }
493- test(" 2011-12-25 09:00:00.123456" , " UTC" , " 2011-12-25 09:00:00.123456" )
494- test(" 2011-12-25 18:00:00.123456" , " JST" , " 2011-12-25 09:00:00.123456" )
495- test(" 2011-12-25 01:00:00.123456" , " PST" , " 2011-12-25 09:00:00.123456" )
496- test(" 2011-12-25 17:00:00.123456" , " Asia/Shanghai" , " 2011-12-25 09:00:00.123456" )
497-
498- // Daylight Saving Time
499- test(" 2016-03-13 01:59:59" , " PST" , " 2016-03-13 09:59:59.0" )
500- // 2016-03-13 02:00:00 PST does not exists
501- test(" 2016-03-13 02:00:00" , " PST" , " 2016-03-13 10:00:00.0" )
502- test(" 2016-03-13 03:00:00" , " PST" , " 2016-03-13 10:00:00.0" )
503- test(" 2016-11-06 00:59:59" , " PST" , " 2016-11-06 07:59:59.0" )
504- // 2016-11-06 01:00:00 PST could be 2016-11-06 08:00:00 UTC or 2016-11-06 09:00:00 UTC
505- test(" 2016-11-06 01:00:00" , " PST" , " 2016-11-06 09:00:00.0" )
506- test(" 2016-11-06 01:59:59" , " PST" , " 2016-11-06 09:59:59.0" )
507- test(" 2016-11-06 02:00:00" , " PST" , " 2016-11-06 10:00:00.0" )
499+
500+ for (tz <- DateTimeTestUtils .ALL_TIMEZONES ) {
501+ DateTimeTestUtils .withDefaultTimeZone(tz) {
502+ test(" 2011-12-25 09:00:00.123456" , " UTC" , " 2011-12-25 09:00:00.123456" )
503+ test(" 2011-12-25 18:00:00.123456" , " JST" , " 2011-12-25 09:00:00.123456" )
504+ test(" 2011-12-25 01:00:00.123456" , " PST" , " 2011-12-25 09:00:00.123456" )
505+ test(" 2011-12-25 17:00:00.123456" , " Asia/Shanghai" , " 2011-12-25 09:00:00.123456" )
506+ }
507+ }
508+
509+ DateTimeTestUtils .withDefaultTimeZone(TimeZone .getTimeZone(" PST" )) {
510+ // Daylight Saving Time
511+ test(" 2016-03-13 01:59:59" , " PST" , " 2016-03-13 09:59:59.0" )
512+ // 2016-03-13 02:00:00 PST does not exists
513+ test(" 2016-03-13 02:00:00" , " PST" , " 2016-03-13 10:00:00.0" )
514+ test(" 2016-03-13 03:00:00" , " PST" , " 2016-03-13 10:00:00.0" )
515+ test(" 2016-11-06 00:59:59" , " PST" , " 2016-11-06 07:59:59.0" )
516+ // 2016-11-06 01:00:00 PST could be 2016-11-06 08:00:00 UTC or 2016-11-06 09:00:00 UTC
517+ test(" 2016-11-06 01:00:00" , " PST" , " 2016-11-06 09:00:00.0" )
518+ test(" 2016-11-06 01:59:59" , " PST" , " 2016-11-06 09:59:59.0" )
519+ test(" 2016-11-06 02:00:00" , " PST" , " 2016-11-06 10:00:00.0" )
520+ }
508521 }
509522
510523 test(" daysToMillis and millisToDays" ) {
0 commit comments