Уже несколько дней я пытаюсь понять, как протестировать свой API с помощью GHUnit. Теперь я пришел к проблеме, чтобы проверить это:
API получает несколько входных данных, CUT что-то делает и запускает NSTimer. После запуска таймера он отправляет NSNotification с некоторыми данными userInfo. Понятно, как проверить данные userInfo, но я хочу проверить, отправляется ли уведомление только при соблюдении некоторых определенных обстоятельств, а если нет, то его вообще не следует отправлять.
Как я могу это протестировать, стало ясно после прочтения этого: http://www.hpique.com/2013/12/nsnotificationcenter-part-3/
Но теперь возникает логическая проблема: асинхронное поведение CUT с отправкой NSNotification после срабатывания NSTimer. Теперь, когда я буду ждать в каждом тесте, пока сработает таймер, мои тесты станут очень медленными.
Как я могу проверить поведение, не дожидаясь срабатывания NSTimer? У тебя есть идеи?