Add more _.isEqual tests and ensure _.isEqual(_(false), _(false)) will compare correctly.

This commit is contained in:
John-David Dalton
2013-10-31 09:01:40 -07:00
parent 8e659745fd
commit a0c5cb51aa
9 changed files with 349 additions and 191 deletions

View File

@@ -617,8 +617,11 @@
}
var isArr = className == arrayClass;
if (!isArr) {
if (hasOwnProperty.call(a, '__wrapped__ ') || b instanceof lodash) {
return baseIsEqual(a.__wrapped__ || a, b.__wrapped__ || b, stackA, stackB);
var aWrapped = a instanceof lodash,
bWrapped = b instanceof lodash;
if (aWrapped || bWrapped) {
return baseIsEqual(aWrapped ? a.__wrapped__ : a, bWrapped ? b.__wrapped__ : b, stackA, stackB);
}
if (className != objectClass) {
return false;