Сбой модульного теста - почему? - PullRequest
1 голос
/ 16 июля 2010

У меня есть следующий тест в моем наборе модульных тестов:

STAssertEquals(0, [[newUnit itemsWithinBasketFrom:[NSDate dateYesterday] through:[NSDate dateTomorrow]] count],
               @"A unit with no items should return 0 when asked for items in place within a date range. (count=%i)",
               [[newUnit itemsWithinBasketFrom:[NSDate dateYesterday] through:[NSDate dateTomorrow]] count]);

И вывод из консоли сборки: Type mismatch -- A unit with no items should return nil when asked for items in basket within a date range. (count=0).

Если число равно 0, и я 'm, проверяя равенство 0, тогда почему я получаю несоответствие типов?

Спасибо!

Ответы [ 2 ]

3 голосов
/ 30 июня 2011

count возвращает NSUInteger, что составляет unsigned int. Вы устанавливаете ожидаемое значение как 0, которое равно int. Эти типы разные. Приведите 0 к NSUInteger как (NSUInteger)0 или используйте 0U.

0 голосов
/ 16 июля 2010

ИМО, проблема не в количестве 0 или нет.Что такое возвращаемый тип [[newUnit itemsInPlaceWithinDateRangeFrom:[NSDate dateYesterday] through:[NSDate dateTomorrow]] count].Возможно, ваш тип неверен (например, double), тогда, когда вы пытаетесь распечатать его, он кажется равным 0. И поскольку он не может сравнивать int и double, он генерирует несоответствие типов.Это только мое предположение

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...