diff options
| author | Brett Porter | 2014-03-18 15:36:00 +1100 |
|---|---|---|
| committer | Igor Minar | 2014-03-18 21:30:29 -0700 |
| commit | 0c65f1ae3e86cd3eed078df4e691402d591cc757 (patch) | |
| tree | c9c5030570ace62e738835b05edaadc03268d1a6 | |
| parent | f40f54c6da4a5399fe18a89d068634bb491e9f1a (diff) | |
| download | angular.js-0c65f1ae3e86cd3eed078df4e691402d591cc757.tar.bz2 | |
test(ngMock): workaround issue with negative timestamps
In some specific timezones and operating systems, it seems that
getTimezoneOffset() can return an incorrect value for negative timestamps, as
described in #5017. While this isn't something easily fixed in the mock code,
the tests can avoid that particular timeframe by using a positive timestamp.
Closes #5017
Closes #6730
| -rw-r--r-- | test/ngMock/angular-mocksSpec.js | 15 |
1 files changed, 9 insertions, 6 deletions
diff --git a/test/ngMock/angular-mocksSpec.js b/test/ngMock/angular-mocksSpec.js index b3608013..33c8f34a 100644 --- a/test/ngMock/angular-mocksSpec.js +++ b/test/ngMock/angular-mocksSpec.js @@ -52,16 +52,19 @@ describe('ngMock', function() { it('should fake getHours method', function() { - //0 in -3h - var t0 = new angular.mock.TzDate(-3, 0); + // avoid going negative due to #5017, so use Jan 2, 1970 00:00 UTC + var jan2 = 24 * 60 * 60 * 1000; + + //0:00 in -3h + var t0 = new angular.mock.TzDate(-3, jan2); expect(t0.getHours()).toBe(3); - //0 in +0h - var t1 = new angular.mock.TzDate(0, 0); + //0:00 in +0h + var t1 = new angular.mock.TzDate(0, jan2); expect(t1.getHours()).toBe(0); - //0 in +3h - var t2 = new angular.mock.TzDate(3, 0); + //0:00 in +3h + var t2 = new angular.mock.TzDate(3, jan2); expect(t2.getHours()).toMatch(21); }); |
