Как читать в локальном файле JSON для тестирования
Я пытаюсь написать модульные тесты для проверки JSON (так как приложение в значительной степени зависит от JSON от остальных API).
У меня есть локальный файл, который содержит простой JSON: "goodFeaturedJson.txt»
Содержимое:
{
"test": "TEST"
}
Контрольный пример:
- (void)testJsonIsValid
{
Featured *featured = [Featured new];
NSString* filepath = [[NSBundle mainBundle]pathForResource:@"goodFeaturedJson" ofType:@"text"];
NSData *data = [NSData dataWithContentsOfFile:filepath];
NSString *jsonString = [[NSString alloc] initWithContentsOfFile:filepath encoding:NSUTF8StringEncoding error:nil];//[[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding];
NSLog(@"The json string is: %@", jsonString);
id JSON = [NSJSONSerialization JSONObjectWithData:data options:kNilOptions error:nil];
STAssertTrue([featured jsonIsValid:JSON], @"Featured Data is NOT valid...");
}
Тест не проходит каждый раз. Консоль печатает:
The json string is: (null)
Зачем? Я знаю, почему тест не пройден, так как ясно, что если данные равны нулю / нулю, то не будет действительного json, и валидатор сломается (что должно произойти, если он неверен).
Там должно быть что-то простое, что я пропустил здесь, какие-нибудь идеи?