Как я дразню метод, который принимает дескриптор как аргумент в OCMock?

Самая большая оборотная сторона - то, что, если Вы действительно хотите сделать TDD правильно, необходимо будет перестать работать много перед следованием. Данный, сколько компаний-разработчиков программного обеспечения работает (доллар на KLOC) Вы будете в конечном счете уволены. Даже если Ваш код является быстрее, более чистым, легче поддержать и имеет меньше ошибок.

, Если Вы работаете в компании, которая платит Вам KLOCs (или реализованные требования - даже если не протестированный) избегают TDD (или кодируйте обзоры, или парное программирование или Непрерывную Интеграцию, и т.д. и т.д. и т.д.).

18
задан Kevlar 17 August 2009 в 16:13
поделиться

2 ответа

К сожалению, я тоже не нашел хорошего решения для этого. Лучшее, что я могу сказать, - это попытаться использовать NSError ** как можно меньше, а затем поместить его в изолированную функцию, которую вы можете полностью имитировать на своем частичном макете.

Я нахожу, что любой код, который использует что-либо, кроме NSObject * (или производных) или примитивных значений (NSInteger, BOOL и т. д.), практически невозможно протестировать с помощью OCMock.

-3
ответ дан 30 November 2019 в 06:14
поделиться
[[[mock stub] andReturn:someDict] uploadValues:YES error:[OCMArg setTo:nil]];

или

NSError* someError = ...
[[[mock stub] andReturn:someDict] uploadValues:YES error:[OCMArg setTo:someError]];

Вы также можете сделать

[[[mock stub] andReturn:someDict] uploadValues:YES error:[OCMArg anyPointer]];

, но это может привести к тому, что ваш код будет неправильно думать, что вы вернули реальную ошибку NSError.

48
ответ дан 30 November 2019 в 06:14
поделиться
Другие вопросы по тегам:

Похожие вопросы: