Handle string comparisons correctly with equals_
This commit is contained in:
parent
dec92322f1
commit
c85079e9d0
@ -92,6 +92,16 @@ jasmine.isArray_ = function(value) {
|
|||||||
return Object.prototype.toString.apply(value) === '[object Array]';
|
return Object.prototype.toString.apply(value) === '[object Array]';
|
||||||
};
|
};
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @ignore
|
||||||
|
* @private
|
||||||
|
* @param value
|
||||||
|
* @returns {Boolean}
|
||||||
|
*/
|
||||||
|
jasmine.isString_ = function(value) {
|
||||||
|
return Object.prototype.toString.apply(value) === '[object String]';
|
||||||
|
};
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Pretty printer for expecations. Takes any object and turns it into a human-readable string.
|
* Pretty printer for expecations. Takes any object and turns it into a human-readable string.
|
||||||
*
|
*
|
||||||
@ -822,6 +832,10 @@ jasmine.Env.prototype.equals_ = function(a, b, mismatchKeys, mismatchValues) {
|
|||||||
return b.matches(a);
|
return b.matches(a);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (jasmine.isString_(a) && jasmine.isString_(b)) {
|
||||||
|
return (a == b);
|
||||||
|
}
|
||||||
|
|
||||||
if (typeof a === "object" && typeof b === "object") {
|
if (typeof a === "object" && typeof b === "object") {
|
||||||
return this.compareObjects_(a, b, mismatchKeys, mismatchValues);
|
return this.compareObjects_(a, b, mismatchKeys, mismatchValues);
|
||||||
}
|
}
|
||||||
@ -2275,5 +2289,5 @@ jasmine.version_= {
|
|||||||
"major": 0,
|
"major": 0,
|
||||||
"minor": 10,
|
"minor": 10,
|
||||||
"build": 1,
|
"build": 1,
|
||||||
"revision": 1268680515
|
"revision": 1268838574
|
||||||
};
|
};
|
||||||
|
@ -54,6 +54,9 @@ describe("jasmine.Matchers", function() {
|
|||||||
|
|
||||||
expect((match(['a', 'b']).toEqual(['a', jasmine.undefined]))).toEqual(false);
|
expect((match(['a', 'b']).toEqual(['a', jasmine.undefined]))).toEqual(false);
|
||||||
expect((match(['a', 'b']).toEqual(['a', 'b', jasmine.undefined]))).toEqual(false);
|
expect((match(['a', 'b']).toEqual(['a', 'b', jasmine.undefined]))).toEqual(false);
|
||||||
|
|
||||||
|
expect((match(new String("cat")).toEqual("cat"))).toBe(true);
|
||||||
|
expect((match(new String("cat")).toNotEqual("cat"))).toBe(false);
|
||||||
});
|
});
|
||||||
|
|
||||||
it("toEqual to build an Expectation Result", function() {
|
it("toEqual to build an Expectation Result", function() {
|
||||||
|
@ -209,6 +209,10 @@ jasmine.Env.prototype.equals_ = function(a, b, mismatchKeys, mismatchValues) {
|
|||||||
return b.matches(a);
|
return b.matches(a);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (jasmine.isString_(a) && jasmine.isString_(b)) {
|
||||||
|
return (a == b);
|
||||||
|
}
|
||||||
|
|
||||||
if (typeof a === "object" && typeof b === "object") {
|
if (typeof a === "object" && typeof b === "object") {
|
||||||
return this.compareObjects_(a, b, mismatchKeys, mismatchValues);
|
return this.compareObjects_(a, b, mismatchKeys, mismatchValues);
|
||||||
}
|
}
|
||||||
|
10
src/base.js
10
src/base.js
@ -92,6 +92,16 @@ jasmine.isArray_ = function(value) {
|
|||||||
return Object.prototype.toString.apply(value) === '[object Array]';
|
return Object.prototype.toString.apply(value) === '[object Array]';
|
||||||
};
|
};
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @ignore
|
||||||
|
* @private
|
||||||
|
* @param value
|
||||||
|
* @returns {Boolean}
|
||||||
|
*/
|
||||||
|
jasmine.isString_ = function(value) {
|
||||||
|
return Object.prototype.toString.apply(value) === '[object String]';
|
||||||
|
};
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Pretty printer for expecations. Takes any object and turns it into a human-readable string.
|
* Pretty printer for expecations. Takes any object and turns it into a human-readable string.
|
||||||
*
|
*
|
||||||
|
Loading…
Reference in New Issue
Block a user