diff --git a/openbis-ipad/BisKit/Classes/CISDOBIpadEntity.h b/openbis-ipad/BisKit/Classes/CISDOBIpadEntity.h index d79118b30ffbed49b9bd2ce20511af18f5f1401f..c823ceb3321d3db9b45aa7f38d34a9d82225b224 100644 --- a/openbis-ipad/BisKit/Classes/CISDOBIpadEntity.h +++ b/openbis-ipad/BisKit/Classes/CISDOBIpadEntity.h @@ -40,7 +40,7 @@ @property (nonatomic, retain) NSString * imageUrl; @property (nonatomic, retain) NSString * childrenPermIdsJson; -@property (nonatomic, retain) NSArray * childrenPermIds; +@property (readonly) NSArray * childrenPermIds; @property (nonatomic, retain) NSString * propertiesJson; @property (readonly) NSArray * properties; diff --git a/openbis-ipad/BisKit/Classes/CISDOBIpadEntity.m b/openbis-ipad/BisKit/Classes/CISDOBIpadEntity.m index 6b31a1df838a1ae334e23d98ca49a0a3a0dba5e3..ce2c3adde4536dab005f855eae0248c64e9bf710 100644 --- a/openbis-ipad/BisKit/Classes/CISDOBIpadEntity.m +++ b/openbis-ipad/BisKit/Classes/CISDOBIpadEntity.m @@ -71,7 +71,7 @@ if (nil == childrenPermIds) { NSError *error; - NSArray *childrenPermIds = [NSJSONSerialization JSONObjectWithData: [self.propertiesJson dataUsingEncoding: NSASCIIStringEncoding] options: 0 error: &error]; + childrenPermIds = [NSJSONSerialization JSONObjectWithData: [self.childrenPermIdsJson dataUsingEncoding: NSASCIIStringEncoding] options: 0 error: &error]; if (error) { NSLog(@"Could not deserialize childrenPermIds %@", error); } diff --git a/openbis-ipad/BisKit/Tests/CISDOBIpadEntityTest.m b/openbis-ipad/BisKit/Tests/CISDOBIpadEntityTest.m index 070d457fe5d388b5d6ce183dc522ebeb2239c9ab..215e83719a436489cbcbfacf2c32d7a2c804600f 100644 --- a/openbis-ipad/BisKit/Tests/CISDOBIpadEntityTest.m +++ b/openbis-ipad/BisKit/Tests/CISDOBIpadEntityTest.m @@ -90,6 +90,11 @@ NSManagedObjectContext* GetDatabaseManagedObjectContext(NSURL* storeURL, NSError // Create new entities in the moc, and store them. CISDOBIpadEntity *entity = [NSEntityDescription insertNewObjectForEntityForName: @"CISDOBIpadEntity" inManagedObjectContext: _moc]; [entity initializeFromRawEntity: rawEntity]; + + // Make sure that the children collection is parsable + if ([rawEntity.children length] > 2) { + STAssertTrue([entity.childrenPermIds count] > 0, @"%@ should result in an entity with children", rawEntity.children); + } } NSError *error; diff --git a/openbis-ipad/Research/BisMac.xcodeproj/project.xcworkspace/xcuserdata/cramakri.xcuserdatad/UserInterfaceState.xcuserstate b/openbis-ipad/Research/BisMac.xcodeproj/project.xcworkspace/xcuserdata/cramakri.xcuserdatad/UserInterfaceState.xcuserstate index 91ee00a08d27f9fb36dd06f81b5c0295b4bf2489..20ae66e13e1889dbeb80e88a5f24ae94d98c6fb9 100644 Binary files a/openbis-ipad/Research/BisMac.xcodeproj/project.xcworkspace/xcuserdata/cramakri.xcuserdatad/UserInterfaceState.xcuserstate and b/openbis-ipad/Research/BisMac.xcodeproj/project.xcworkspace/xcuserdata/cramakri.xcuserdatad/UserInterfaceState.xcuserstate differ diff --git a/openbis-ipad/openBIS/openBIS.xcodeproj/project.xcworkspace/xcuserdata/cramakri.xcuserdatad/UserInterfaceState.xcuserstate b/openbis-ipad/openBIS/openBIS.xcodeproj/project.xcworkspace/xcuserdata/cramakri.xcuserdatad/UserInterfaceState.xcuserstate index 263f41786bade207c24a8f467ec73afd29e4451c..7f905ee632c5c881a1b23061c0514742b3b555f9 100644 Binary files a/openbis-ipad/openBIS/openBIS.xcodeproj/project.xcworkspace/xcuserdata/cramakri.xcuserdatad/UserInterfaceState.xcuserstate and b/openbis-ipad/openBIS/openBIS.xcodeproj/project.xcworkspace/xcuserdata/cramakri.xcuserdatad/UserInterfaceState.xcuserstate differ