I've got two ParseModel subclasses: Foo and Bar.
Foo holds an instance of Bar like so:
@interface Foo : ParseModel
@property(nonatomic, strong) Bar *bar;
@end
@interface Bar : ParseModel
@property(nonatomic, strong) NSNumber *theAnswer;
@end
I fetch all Foos. I want to assert some properties about bars
PFQuery *query = [PFQuery queryWithClassName:@"Foo"];
query.cachePolicy = kPFCachePolicyCacheThenNetwork;
[query includeKey:@"bar"];
[query findObjectsInBackgroundWithBlock:^(NSArray *objects, NSError *error) {
// Print information about foos.
Foo *foo = objects[0];
expect(foo.bar).to.beInstanceOf([Bar class]); // FAILS: expected Bar but was actually PFObject
expect(foo.bar.theAnswer).to.equal(@42); // -[PFObject theAnswer]: unrecognized selector sent to instance...
}];
What's the expected behaviour here? Must I marshall PFObjects in and out of those properties myself?