2013-09-21 2 views
18

Я пытаюсь создать модульные тесты, используя новую систему XCTest введенной в Xcode 5. У меня есть строка в одном из моих тестовых случаев, выглядит следующим образом:Clang Ошибка: Ссылка на NSUTF8StringEncoding неоднозначна

XCTAssertEqual([self.client stringEncoding], NSUTF8StringEncoding, …);

Когда я пытаюсь запустить свои тесты, Xcode выплевывает эту ошибку: «Ссылка на NSUTF8StringEncoding неоднозначна». Я могу получить тест на работу, изменив эту строку на это: (. Это работает, потому что 4 это значение NSUTF8StringEncoding)

XCTAssertEqual([self.client stringEncoding], (NSStringEncoding) 4, …);

Это также происходит, когда я задаю NSUTF8StringEncoding локальной переменной и использовать его в вызове XCTAssertEqual(). Почему я получаю эту ошибку?

+0

Этот код работает для меня. Если вы вернете NSUTF8StringEncoding в функцию и щелкнете по нему, что вы видите? – bneely

+0

@bneely: Когда я нажимаю Command на NSUTF8StringEncoding, я беру непосредственно его объявление на строку 'NSString.h' 40. Он все еще не компилируется. – wjk

+0

Какие рамки вы связываете с целевой единицей тестирования? Какой заголовок (ы) вы включаете в файл реализации тестового модуля (файл .m)? – bneely

ответ

0

Пожалуйста, импортируйте ниже рамки в свой файл.

#import <UIKit/UIKit.h> 
Смежные вопросы