Add test for class properties.

main
David Chisnall 8 years ago
parent bfe9475204
commit aba7e406ff

@ -12,12 +12,15 @@ __attribute__((objc_root_class))
@interface helloclass {
@private int varName;
}
@property (class, retain) id clsProp;
@property (readwrite,assign) int propName;
@end
@implementation helloclass
@synthesize propName = varName;
+ (id)class { return self; }
+ (id)clsProp { return nil; }
+ (void)setClsProp: (id)arg {}
@end
int main()
@ -29,6 +32,15 @@ int main()
assert(strcmp(property_getName(property), "propName") == 0);
assert(strcmp(property_getAttributes(property), "Ti,VvarName") == 0);
free(properties);
objc_property_t *clsproperties = class_copyPropertyList(object_getClass([helloclass class]), &outCount);
assert(outCount == 1);
property = properties[0];
assert(strcmp(property_getName(property), "clsProp") == 0);
fprintf(stderr, "%s\n", property_getAttributes(property));
assert(strcmp(property_getAttributes(property), "T@,&") == 0);
free(properties);
Method* methods = class_copyMethodList([helloclass class], &outCount);
assert(outCount == 2);
free(methods);

Loading…
Cancel
Save