From 9b28474b8cd1a26677345559d544e8e0e0cb27b8 Mon Sep 17 00:00:00 2001 From: Jonathan Perret Date: Sun, 29 Jan 2017 15:40:52 +0100 Subject: [PATCH 1/2] Fix reversed application of timezone offset (#77) Fixes #77. Also makes rounding unnecessary in tests by fixing fractional seconds in test data. --- src/Utils.coffee | 2 +- test/spec/YamlSpec.coffee | 20 ++++++++++---------- 2 files changed, 11 insertions(+), 11 deletions(-) diff --git a/src/Utils.coffee b/src/Utils.coffee index 6ab1116..9464b17 100644 --- a/src/Utils.coffee +++ b/src/Utils.coffee @@ -258,7 +258,7 @@ class Utils # Compute date date = new Date Date.UTC(year, month, day, hour, minute, second, fraction) if tz_offset - date.setTime date.getTime() + tz_offset + date.setTime date.getTime() - tz_offset return date diff --git a/test/spec/YamlSpec.coffee b/test/spec/YamlSpec.coffee index 0d0f613..b3d6dc1 100644 --- a/test/spec/YamlSpec.coffee +++ b/test/spec/YamlSpec.coffee @@ -413,17 +413,17 @@ describe 'Parsed YAML Basic Types', -> iso8601Date.setTime iso8601Date.getTime() - 5 * 3600 * 1000 spaceSeparatedDate = new Date Date.UTC(2001, 12-1, 14, 21, 59, 43, 10) - spaceSeparatedDate.setTime spaceSeparatedDate.getTime() - 5 * 3600 * 1000 + spaceSeparatedDate.setTime spaceSeparatedDate.getTime() + 5 * 3600 * 1000 withDatesToTime = (input) -> res = {} for key, val of input - res[key] = Math.round(val.getTime() / 1000) * 1000 + res[key] = val.getTime() return res expect withDatesToTime(YAML.parse """ - iso8601: 2001-12-14t21:59:43.10-05:00 - space seperated: 2001-12-14 21:59:43.10 -05:00 + iso8601: 2001-12-14t21:59:43.010+05:00 + space seperated: 2001-12-14 21:59:43.010 -05:00 """) .toEqual withDatesToTime ( 'iso8601': iso8601Date @@ -439,7 +439,7 @@ describe 'Parsed YAML Basic Types', -> return input res = {} for key, val of input - res[key] = Math.round(val.getTime() / 1000) * 1000 + res[key] = val.getTime() return res expect withDatesToTime(YAML.parse """ @@ -1148,7 +1148,7 @@ describe 'Dumped YAML Basic Types', -> it 'can be time', -> iso8601Date = new Date Date.UTC(2001, 12-1, 14, 21, 59, 43, 10) - iso8601Date.setTime iso8601Date.getTime() - 5 * 3600 * 1000 + iso8601Date.setTime iso8601Date.getTime() + 5 * 3600 * 1000 spaceSeparatedDate = new Date Date.UTC(2001, 12-1, 14, 21, 59, 43, 10) spaceSeparatedDate.setTime spaceSeparatedDate.getTime() - 5 * 3600 * 1000 @@ -1156,12 +1156,12 @@ describe 'Dumped YAML Basic Types', -> withDatesToTime = (input) -> res = {} for key, val of input - res[key] = Math.round(val.getTime() / 1000) * 1000 + res[key] = val.getTime() return res expect withDatesToTime(YAML.parse """ - iso8601: 2001-12-14t21:59:43.10-05:00 - space seperated: 2001-12-14 21:59:43.10 -05:00 + iso8601: 2001-12-14t21:59:43.010-05:00 + space seperated: 2001-12-14 21:59:43.010 +05:00 """) .toEqual YAML.parse YAML.dump withDatesToTime ( 'iso8601': iso8601Date @@ -1177,7 +1177,7 @@ describe 'Dumped YAML Basic Types', -> return input res = {} for key, val of input - res[key] = Math.round(val.getTime() / 1000) * 1000 + res[key] = val.getTime() return res expect withDatesToTime(YAML.parse """ From bfde7ad7853e16f253289b7d03c69b6c1cc702d0 Mon Sep 17 00:00:00 2001 From: Jonathan Perret Date: Sun, 12 Feb 2017 11:11:04 +0100 Subject: [PATCH 2/2] Fix typo: seperated -> separated --- test/spec/YamlSpec.coffee | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/test/spec/YamlSpec.coffee b/test/spec/YamlSpec.coffee index b3d6dc1..68bbc4c 100644 --- a/test/spec/YamlSpec.coffee +++ b/test/spec/YamlSpec.coffee @@ -423,11 +423,11 @@ describe 'Parsed YAML Basic Types', -> expect withDatesToTime(YAML.parse """ iso8601: 2001-12-14t21:59:43.010+05:00 - space seperated: 2001-12-14 21:59:43.010 -05:00 + space separated: 2001-12-14 21:59:43.010 -05:00 """) .toEqual withDatesToTime ( 'iso8601': iso8601Date - 'space seperated': spaceSeparatedDate + 'space separated': spaceSeparatedDate ) @@ -1161,11 +1161,11 @@ describe 'Dumped YAML Basic Types', -> expect withDatesToTime(YAML.parse """ iso8601: 2001-12-14t21:59:43.010-05:00 - space seperated: 2001-12-14 21:59:43.010 +05:00 + space separated: 2001-12-14 21:59:43.010 +05:00 """) .toEqual YAML.parse YAML.dump withDatesToTime ( 'iso8601': iso8601Date - 'space seperated': spaceSeparatedDate + 'space separated': spaceSeparatedDate )