단위 테스트를 쓰고 있습니다. 이 keyWindowUIApplication의 속성/내부 가치를 조롱하는 방법?
UIWindow* window = [UIApplication sharedApplication].keyWindow;
를 호출하고 keyWindow (나는 모든 창없는) 전무를 반환하기 때문에 그리고, 하나 개의 기능을 테스트 할 수 없습니다. 하지만 아무것도 돌려 줄 필요는 없지만 아무 것도하지 않아도됩니다.
나는 카테고리를 사용하여 수동으로 keyWindow 값을 설정하지만,이
당신이 내 자리에 어떻게 할 것인지@interface UIApplication(UnitTest)
- (id)getKeyWindow;
@end
@implementation UIApplication(UnitTest)
- (id)getKeyWindow
{
return [self keyWindow];
}
@end
// compiler error: lvalue required as left operand of assignment
[[UIApplication sharedApplication] getKeyWindow] = [[UIWindow alloc] init];
를 작동하지 않았다?