У меня есть подкласс UITextView, который соответствует протоколу UIKeyInput. Поэтому я написал несколько логических тестов.
У меня нет ошибок, и все остальные тесты выполняются хорошо, но когда предполагается создание объекта myTextView:
MyTextView *myTextView = [[MyTextView alloc] initWithFrame:frame];
тест останавливается, (как точка останова) не будет продолжаться
Интересно, почему это? Возможно, объекты MyTextView не могут быть созданы в логических тестах? Нужно ли здесь тестировать приложение? Если это так, то каково правило?
ДОБАВЛЕНО
Это один из тестов: (у меня есть еще пара, но все они останавливаются на первой строке)
- (void)testHasText{
MyTextView *myTextView = [[MyTextView alloc] initWithFrame:CGRectMake(0, 0, 100, 100)];
[myTextView setText:@"some text"];
STAssertTrue([myTextView hasText], @"hasText failed: It has text!");
[myTextView setText:@""];
STAssertFalse([myTextView hasText], @"hasText failed: It it empty!");
[myTextView release];
}
Это реализация в MyTextView:
- (BOOL)hasText{
return [[self text] length]>0?YES:NO;
}
Я прокомментировал другие методы в MyTextView, оставив только три, связанные с UIKeyInput.
Также я добавил MyTextView.m в список источников компиляции в цели LogicTests. Может ли это быть проблемой конфигурации, даже если я не получаю сообщение об ошибке или предупреждение компоновщика?