diff options
| author | Misko Hevery | 2012-02-23 13:57:28 -0800 |
|---|---|---|
| committer | Misko Hevery | 2012-02-23 13:57:28 -0800 |
| commit | ffa84418862a9f768ce5b9b681916438f14a0d79 (patch) | |
| tree | 2eb74fb2fc9879743ee6dd6526c78e089cd18b96 | |
| parent | 5d8528cc2e1092cdd9533f8c9f0d716200e88b7e (diff) | |
| download | angular.js-ffa84418862a9f768ce5b9b681916438f14a0d79.tar.bz2 | |
bug(equals): incorect comparison of dates
| -rw-r--r-- | src/Angular.js | 2 | ||||
| -rw-r--r-- | test/AngularSpec.js | 7 |
2 files changed, 9 insertions, 0 deletions
diff --git a/src/Angular.js b/src/Angular.js index 65610869..87c10e23 100644 --- a/src/Angular.js +++ b/src/Angular.js @@ -671,6 +671,8 @@ function equals(o1, o2) { } return true; } + } else if (isDate(o1)) { + return isDate(o2) && o1.getTime() == o2.getTime(); } else { if (isScope(o1) || isScope(o2) || isWindow(o1) || isWindow(o2)) return false; keySet = {}; diff --git a/test/AngularSpec.js b/test/AngularSpec.js index 10f5fd2a..9d7bda94 100644 --- a/test/AngularSpec.js +++ b/test/AngularSpec.js @@ -168,6 +168,13 @@ describe('angular', function() { expect(equals(window, window.parent)).toBe(false); expect(equals(window, undefined)).toBe(false); }); + + it('should compare dates', function() { + expect(equals(new Date(0), new Date(0))).toBe(true); + expect(equals(new Date(0), new Date(1))).toBe(false); + expect(equals(new Date(0), 0)).toBe(false); + expect(equals(0, new Date(0))).toBe(false); + }); }); describe('size', function() { |
