Samouczek AngularJS ma niestandardowe narzędzie, które nie działa w Jasmine począwszy od wersji 2.0:
beforeEach(function(){
this.addMatchers({
toEqualData: function(expected) {
return angular.equals(this.actual, expected);
}
});
});
Próba modyfikacji matchera nie powiedzie się z błędem:
TypeError: undefined is not an object (evaluating "matcherCompare.apply")
Moja definicja matchera:
beforeEach(function(){
jasmine.addMatchers({
toEqualData: function(util, customEqualityTesters, actual, expected) {
return angular.equals(actual, expected);
}
});
});
Dokumenty niestandardowego narzędzia Jasmine 2.0.
Jak to działa?
Odpowiedzi:
1 dla odpowiedzi № 1beforeEach(function () {
jasmine.addMatchers({
toEqualData: function () {
return {
compare: function (actual, expected) {
return {pass: angular.equals(actual, expected)};
}
};
}
});
});