iPhone - получение ресурсов для логических юнит-тестов
Я следовал документации Apple по написанию юнит-тестов для iPhone, и из коробки рутина, похоже, не работает. Я не уверен, что понимаю, где собирается модульный тест, чтобы получить ссылку на делегат приложения.
Мои зависимости выглядят следующим образом: My_Program_target -> UnitTesting_target -> UnitTests_bundle
В следующем фрагменте кода утверждение не выполняется. Я очень знаком с CPPUNIT, но мне трудно понять, как это пересекается.
- (void) testAppDelegate {
id yourApplicationDelegate = [[UIApplication sharedApplication] delegate];
STAssertNotNil(yourApplicationDelegate, @"UIAppliation failed to find the AppDelegate");
}
Дополнительно
В своем подходе я решил провести логический тест. Я пытаюсь читать в XML-файле, но мне не везет, разрешая пакет, который предоставит мне путь, по которому я могу получить доступ к своему файлу. Я попытался вставить путь вывода allBundles, но этот путь тоже не работает. Ниже показано, что я выполняю в своем тесте (вы можете увидеть оператор отладки, который я использую для вывода путей пакетов):
NSLog(@"BundlePaths: %@", [NSBundle allBundles]);
NSString * path = [[NSBundle bundleWithPath:@"$(TARGET_BUILD_DIR)"] pathForResource:@"SimpleTestList" ofType:@"plist"];
STAssertNotNil(path, @"Bundle Location couldn't find the file specified");
По сути, утверждение на пути не является успешным, но я не уверен, что указать путь или каталог для ссылки на мой пакет unitTest, который я сказал для копирования ресурсов пакета. Вызов [NSBundle mainBundle] также не работает.