fix(equals): {} and [] should not be considered equivalent

angular.equals was returning inconsistent values for the comparison between
{} and []:

    angular.equals({}, []) // true
    angular.equals([], {}]) // false

Since these object are not of the same type, they should not be considered
equivalent.
This commit is contained in:
Brenton
2013-06-01 23:29:18 -07:00
committed by Jeff Cross
parent 4a7b6a4555
commit 1dcafd18af
2 changed files with 7 additions and 1 deletions

View File

@@ -289,6 +289,11 @@ describe('angular', function() {
expect(equals(/^abc/, /abc/)).toBe(false);
expect(equals(/^abc/, '/^abc/')).toBe(false);
});
it('should return false when comparing an object and an array', function() {
expect(equals({}, [])).toBe(false);
expect(equals([], {})).toBe(false);
});
});
describe('size', function() {