在我的夹具设置中,我有以下内容
-(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]; 
}