Я пытаюсь написать пользовательский Matcher, который проверяет, содержит ли строка определенное количество вхождений другой строки. Это то, что я сделал.Как написать пользовательский матчи Jasmine
var matcher = {
toContainTimes: function (expected, num) {
return {
compare: function(actual){
actual.match(new RegExp(expected, "g") || []).length == num;
}
}
}
}
Но я получаю сообщение об ошибке при выполнении этого:
TypeError: Cannot read property 'pass' of undefined
Мой тест выглядит следующим образом:
expect(queryString).toContainTimes("&", 2);
Она должна возвращать истину, если происходит строка «&» ровно в два раза Строка запроса. Что я сделал не так?
Вы не 'return' ничего из вашей согласовани. – zerkms