Jasmine has built-in matchers toBe
and toEqual
. If I have an object like this:
function Money(amount, currency){
this.amount = amount;
this.currency = currency;
this.sum = function (money){
return new Money(200, "USD");
}
}
and try to compare new Money(200, "USD")
and the result of sum, these built-in matchers will not work as expected. I have managed to implement a work-around based on a custom equals
method and custom matcher, but it just seems to much work.
What is the standard way to compare objects in Jasmine?
==
and===
is completely wrong. Two different instances of an object with the same content will both return false. For any non-primitives,==
and===
behave identically. jsfiddle.net/9mrmyrs6 – Rixdollar