과 실패, 나는 자 NSPredicate 내가 배열을 필터링하고있어이 myArray
. FVFileStatus
은 typedef 열거 형입니다. 나는 술어를 사용하고 있기 때문에, 술어는 valueForKey
를 호출, 그래서 나는 그것을 밖으로 스텁해야합니다OCMock valueForKey 내가 테스트하고있어 코드에서 자 NSPredicate
-(id)mockFVFileHandleWithStatus:(FVFileStatus)status {
id mock = [OCMockObject mockForClass:[FVFileHandle class]];
[[[mock stub] andReturnValue:OCMOCK_VALUE(status)] valueForKey:[OCMArg checkWithSelector:@selector(isEqualToString:) onObject:@"status"]];
return mock;
}
을 내 테스트를 실행하면 필터에 실패합니다. NSInvalidArgumentException - Reason: Return value does not match method signature
이 있습니다.
NSPredicate와 함께 작동하도록 스텁을 설정하는 방법을 모르겠습니다.
아무도 도와 줄 수 있습니까?
저는 [OCMArg checkWithSelector :]를 사용할 필요가 없으며 문자열을 -valueForKey : 인수로 사용할 수 있습니다. – Greg