Вы делаете это немного неправильно в двух местах:
- Вы возвращаете ноль, когда вы хотите вернуть NO
- Вы не проверяете
error != nil
перед назначениемк этому.Допустимо указывать nil в качестве указателя NSError, чтобы означать «Мне все равно».
После того, как вы исправите это, вы можете протестировать рабочий случай с помощью
STAssertTrue(validateConsistency:nil, ...)
При возникновении ошибки вы должны сделать это следующим образом:
NSError *error;
STAssertFalse(validateConsistency:&error, ...); // Make sure we failed
STAssertEqual([error code], 100, ...); // Make sure the code is right; we can assume the domain is right, or you could check it.