File tree 3 files changed +29
-0
lines changed
3 files changed +29
-0
lines changed Original file line number Diff line number Diff line change @@ -880,6 +880,19 @@ NS_REQUIRES_PROPERTY_DEFINITIONS
880
880
withName : (NSString *)name
881
881
block : (nullable PFBooleanResultBlock)block ;
882
882
883
+ // /--------------------------------------
884
+ #pragma mark - Serialization
885
+ // /--------------------------------------
886
+
887
+ /* *
888
+ Creates a PFObject from a dictionary object.
889
+
890
+ @param dictionary Undecoded dictionary.
891
+ @param defaultClassName The className of the resulting object if none is given by the dictionary.
892
+ */
893
+ + (id )fromDictionary : (NSDictionary *)dictionary
894
+ defaultClassName : (NSString *)defaultClassName ;
895
+
883
896
@end
884
897
885
898
NS_ASSUME_NONNULL_END
Original file line number Diff line number Diff line change @@ -809,6 +809,13 @@ - (BOOL)resolveLocalId:(NSError *__autoreleasing*)error {
809
809
return YES ;
810
810
}
811
811
812
+ + (id )fromDictionary : (NSDictionary *)dictionary
813
+ defaultClassName : (NSString *)defaultClassName {
814
+ return [self _objectFromDictionary: dictionary
815
+ defaultClassName: defaultClassName
816
+ completeData: YES ];
817
+ }
818
+
812
819
+ (id )_objectFromDictionary : (NSDictionary *)dictionary
813
820
defaultClassName : (NSString *)defaultClassName
814
821
completeData : (BOOL )completeData {
Original file line number Diff line number Diff line change @@ -361,4 +361,13 @@ -(void)testLocalRESTEncoding {
361
361
XCTAssertNil (error);
362
362
}
363
363
364
+ - (void )testFromDictionary {
365
+ NSDictionary *dict = @{ @" objectId" : @" XYZ" , @" score" : @1.0 };
366
+ PFObject *object = [PFObject fromDictionary: dict
367
+ defaultClassName: @" Test" ];
368
+
369
+ XCTAssertEqualObjects (dict[@" objectId" ], object.objectId );
370
+ XCTAssertEqualObjects (dict[@" score" ], object[@" score" ]);
371
+ }
372
+
364
373
@end
You can’t perform that action at this time.
0 commit comments