associationForbidden2.m [plain text]
// TEST_CRASHES
/*
TEST_RUN_OUTPUT
Associated object is 0x[0-9a-fA-F]+
objc\[\d+\]: objc_setAssociatedObject called on instance \(0x[0-9a-fA-F]+\) of class ForbiddenSubclass which does not allow associated objects
objc\[\d+\]: HALTED
END
*/
#include "associationForbidden.h"
void test(void)
{
ShouldSucceed([Normal alloc]);
Class ForbiddenSubclass = objc_allocateClassPair([Forbidden class],
"ForbiddenSubclass", 0);
objc_registerClassPair(ForbiddenSubclass);
ShouldFail([ForbiddenSubclass alloc]);
}