Спекта "должен получить" код
Я пытаюсь использовать Specta в качестве основы для модульного тестирования (вместо киви). Как я могу проверить, получает ли объект селектор Скажем, 5 раз, как я это делаю в Киви?
Другими словами, что эквивалентно этой строке кода "Киви":
[[sut should] receive:@selector(showUpsellIfNeededForFile) withCount:5];
Заранее спасибо.
1 ответ
То, что вы ищете, - это функциональность, предоставляемая OCMock, которая не работает со Swift.
Но, что более важно, вам действительно нужно проверить, вызывается ли конкретная функция? Вы только что связали код своего приложения с тестовым кодом.
Я использовал Specta и Expecta в прошлом и перестал использовать такие тесты. Скорее я использую это, поскольку это предназначено для использования - Поведенческое тестирование. Я проверяю, что код, который я запускаю, приводит к требуемому поведению, а не к тому, вызваны ли определенные вспомогательные методы во время теста.