Чтобы мой код можно было тестировать, я создал ленивый инициализатор; Таким образом, в моем модульном тесте я могу издеваться над любым объектом, который захочу, до того, как будет вызван геттер.
Однако когда дело доходит до методов класса, мой метод класса не имеет доступа к свойствам, которые я определил.
- Есть ли способ сделать свойства доступными для моего метода класса?
- Если нет, есть ли способ создать статические переменные, которые также доступны за пределами этого класса, т. Е. Доступны для моего класса модульного тестирования?
@implementation
@synthesize webService;
+ (void)doSomething
{
self.webService.url = @"some url";
[self.webService start];
// do other things
}
- (WebService*)webService
{
if (!webService)
{
webService = [[WebService alloc] init];
}
return webService;
}
@end