Почему OCMock не соответствует моему селектору? - PullRequest
0 голосов
/ 18 ноября 2011

У меня есть ожидание OCMock, которое выглядит примерно так:

id myValidator = [OCMockObject mockForClass: [MyValidator class]];

[[myValidator expect] validateField: @"value1" 
                             target: testObject
                           selector: @selector(field:isValid:)];

Даже когда я выполняю вызов validateField:target:selector: в реализации, проверка ложного сообщения завершается неудачно. Однако, если я заменю селектор на NULL как в реализации, так и в ожидании, то проверка проходит. Очевидно, что NULL - это не то, что я хочу использовать. Совершенно ясно, что проблема заключается где-то в селекторе. Любая идея, почему это может не работать, или как я могу это исправить?

Ответы [ 2 ]

0 голосов
/ 30 ноября 2011

Я скомпилировал весь код OCMock из исходного кода прямо в моем проекте, и это устранило проблему.Возможно, не лучшее решение, но это было, по крайней мере, решение.

0 голосов
/ 29 ноября 2011

Отредактируйте ваши "Другие флаги компоновщика" для вашей цели теста.Добавьте "-ObjC -all_load".Это должно позаботиться об этом, по крайней мере, именно это исправило мою проблему с недействительным селектором.

...