From 5bdd973315fb75e2d3b6f74bfbb5f0133db164ff Mon Sep 17 00:00:00 2001 From: Yuan Zhu Date: Wed, 16 Dec 2015 10:30:09 -0800 Subject: [PATCH] Fix unit tests. --- ResearchKit/Onboarding/ORKRegistrationStep.m | 12 +++++------- Testing/ORKTest/ORKTest/ORKESerialization.m | 2 +- .../ORKTest/ORKTestTests/ORKJSONSerializationTests.m | 5 +++-- 3 files changed, 9 insertions(+), 10 deletions(-) diff --git a/ResearchKit/Onboarding/ORKRegistrationStep.m b/ResearchKit/Onboarding/ORKRegistrationStep.m index 1596f33c..3328da74 100644 --- a/ResearchKit/Onboarding/ORKRegistrationStep.m +++ b/ResearchKit/Onboarding/ORKRegistrationStep.m @@ -179,9 +179,7 @@ static NSArray *ORKRegistrationFormItems(ORKRegistrationStepOptio return formItems; } -@implementation ORKRegistrationStep { - NSArray * _registrationFormItems; -} +@implementation ORKRegistrationStep - (instancetype)initWithIdentifier:(NSString *)identifier title:(NSString *)title @@ -233,11 +231,11 @@ static NSArray *ORKRegistrationFormItems(ORKRegistrationStepOptio } - (NSArray *)formItems { - if (!_registrationFormItems) { - _registrationFormItems = ORKRegistrationFormItems(_options); + if (![super formItems]) { + self.formItems = ORKRegistrationFormItems(_options); } - ORKFormItem *dobFormItem = ORKFindInArrayByFormItemId(_registrationFormItems, ORKRegistrationFormItemIdentifierDOB); + ORKFormItem *dobFormItem = ORKFindInArrayByFormItemId([super formItems], ORKRegistrationFormItemIdentifierDOB); ORKDateAnswerFormat *originalAnswerFormat = (ORKDateAnswerFormat *)dobFormItem.answerFormat; ORKDateAnswerFormat *modifiedAnswerFormat = [ORKAnswerFormat dateAnswerFormatWithDefaultDate:originalAnswerFormat.defaultDate minimumDate:originalAnswerFormat.minimumDate @@ -250,7 +248,7 @@ static NSArray *ORKRegistrationFormItems(ORKRegistrationStepOptio optional:NO]; dobFormItem.placeholder = ORKLocalizedString(@"DOB_FORM_ITEM_PLACEHOLDER", nil); - return _registrationFormItems; + return [super formItems]; } - (NSString *)passcodeValidationRegex { diff --git a/Testing/ORKTest/ORKTest/ORKESerialization.m b/Testing/ORKTest/ORKTest/ORKESerialization.m index e69b9ff0..fa8aa4a6 100644 --- a/Testing/ORKTest/ORKTest/ORKESerialization.m +++ b/Testing/ORKTest/ORKTest/ORKESerialization.m @@ -670,7 +670,7 @@ ret = })), ENTRY(ORKVerificationStep, ^id(NSDictionary *dict, ORKESerializationPropertyGetter getter) { - return [[ORKVerificationStep alloc] initWithIdentifier:GETPROP(dict, identifier) title:GETPROP(dict, title) text:GETPROP(dict, text) verificationViewControllerClass:NSClassFromString(GETPROP(dict, verificationViewControllerString))]; + return [[ORKVerificationStep alloc] initWithIdentifier:GETPROP(dict, identifier) text:GETPROP(dict, text) verificationViewControllerClass:NSClassFromString(GETPROP(dict, verificationViewControllerString))]; }, (@{ PROPERTY(verificationViewControllerString, NSString, NSObject, NO, nil, nil) diff --git a/Testing/ORKTest/ORKTestTests/ORKJSONSerializationTests.m b/Testing/ORKTest/ORKTestTests/ORKJSONSerializationTests.m index d4276a53..9b504cf1 100644 --- a/Testing/ORKTest/ORKTestTests/ORKJSONSerializationTests.m +++ b/Testing/ORKTest/ORKTestTests/ORKJSONSerializationTests.m @@ -494,7 +494,7 @@ ORK_MAKE_TEST_INIT(ORKLocation, (^{ // Serialize again, the output ought to be equal NSDictionary *dictionary2 = [ORKESerializer JSONObjectForObject:instance2 error:NULL]; BOOL isMatch = [mockDictionary isEqualToDictionary:dictionary2]; - if (! isMatch) + if (!isMatch) { XCTAssertTrue(isMatch, @"Should be equal for class: %@", NSStringFromClass(aClass)); } @@ -699,7 +699,8 @@ ORK_MAKE_TEST_INIT(ORKLocation, (^{ - (void)testEquality { NSArray *classesExcluded = @[]; // classes not intended to be serialized standalone - NSMutableArray *stringsForClassesExcluded = [NSMutableArray array]; + // Each time ORKRegistrationStep returns a new date in its answer fromat, cannot be tested. + NSMutableArray *stringsForClassesExcluded = [NSMutableArray arrayWithObjects:NSStringFromClass([ORKRegistrationStep class]), nil]; for (Class c in classesExcluded) { [stringsForClassesExcluded addObject:NSStringFromClass(c)]; }