в моем арматуре нАлАдкА я следующееOcMock - Заглушка/ожидание/stopmocking
-(void)setUp{
_vc = [OCMockObject partialMockForObject:[[InboxViewController alloc] init]];
//stub out the view stuff
[[_vc stub] removeTask:OCMOCK_ANY];
[[_vc stub] insertTask:OCMOCK_ANY];
}
Есть 15 тестов в арматуре, однако, мне нужно на самом деле проверить, что эти 2 методы вызываются, так что я написал 2 испытания
-(void)someTest{
[[_vc expect] removeTask:OCMOCK_ANY];
[_vc removeAllTasksFromList:taskList notInList:newTaskList];
[_vc verify];
}
но что тест не
я также попытался
-(void)someTest{
[[_vc stopMocking];
[[_vc expect] removeTask:OCMOCK_ANY];
[[_vc stub] removeTask:OCMOCK_ANY];
[_vc removeAllTasksFromList:taskList notInList:newTaskList];
[_vc verify];
}
Но тест все еще не удается. Я что-то упустил, или так работает OCMock?
Единственный способ, которым я могу заставить его работать, как это
-(void)someTest{
//re create and init the mock object
_vc = [OCMockObject partialMockForObject:[[InboxViewController alloc] init]];
[[_vc expect] removeTask:OCMOCK_ANY];
[[_vc stub] removeTask:OCMOCK_ANY];
[_vc removeAllTasksFromList:taskList notInList:newTaskList];
[_vc verify];
}
Хороший вопрос о том, как извлечение испытуемого создает соединение! – Christoph