diff --git a/Tests/Tests/STPApplePayContextFunctionalTest.m b/Tests/Tests/STPApplePayContextFunctionalTest.m index 930dec7379..422681e1c0 100644 --- a/Tests/Tests/STPApplePayContextFunctionalTest.m +++ b/Tests/Tests/STPApplePayContextFunctionalTest.m @@ -33,7 +33,7 @@ @interface STPApplePayContext(Testing) -@property (nonatomic, nullable) PKPaymentAuthorizationController *viewController; +@property (nonatomic, nullable) PKPaymentAuthorizationController *authorizationController; @end @interface STPApplePayContextFunctionalTest : XCTestCase @@ -51,16 +51,16 @@ // Stub dismissViewControllerAnimated: to just call its completion block XCTestExpectation *didDismissVC = [self expectationWithDescription:@"viewController dismissed"]; - id mockVC = OCMClassMock([PKPaymentAuthorizationController class]); - OCMStub([mockVC dismissViewControllerAnimated:YES completion:[OCMArg any]]).andDo(^(NSInvocation *invocation) { + id mockC = OCMClassMock([PKPaymentAuthorizationController class]); + OCMStub([mockC dismissWithCompletion:[OCMArg any]]).andDo(^(NSInvocation *invocation) { __unsafe_unretained void (^dismissCompletion)(void); - [invocation getArgument:&dismissCompletion atIndex:3]; + [invocation getArgument:&dismissCompletion atIndex:2]; dismissCompletion(); [didDismissVC fulfill]; }); self.context = [[STPApplePayContext alloc] initWithPaymentRequest:[STPFixtures applePayRequest] delegate:self.delegate]; self.context.apiClient = self.apiClient; - self.context.viewController = mockVC; + self.context.authorizationController = mockC; } - (void)testCompletesManualConfirmationPaymentIntent { @@ -195,12 +195,12 @@ // Cancelling Apple Pay *before* the context attempts to confirms the PI... STPTestApplePayContextDelegate *delegate = self.delegate; delegate.didCreatePaymentMethodDelegateMethod = ^(__unused STPPaymentMethod *paymentMethod, __unused PKPayment *paymentInformation, STPIntentClientSecretCompletionBlock completion) { - [self.context paymentAuthorizationControllerDidFinish:self.context.viewController]; // Simulate cancel before passing PI to the context + [self.context paymentAuthorizationControllerDidFinish:self.context.authorizationController]; // Simulate cancel before passing PI to the context // ...should never retrieve the PI (b/c it is cancelled before) completion(@"A 'client secret' that triggers an exception if fetched", nil); }; - [self.context paymentAuthorizationController:self.context.viewController + [self.context paymentAuthorizationController:self.context.authorizationController didAuthorizePayment:[STPFixtures simulatorApplePayPayment] handler:^(PKPaymentAuthorizationResult * __unused _Nonnull result) {}]; // Simulate user tapping 'Pay' button in Apple Pay @@ -220,7 +220,7 @@ // Cancelling Apple Pay *after* the context attempts to confirms the PI... id apiClientMock = OCMPartialMock(self.apiClient); OCMStub([apiClientMock confirmPaymentIntentWithParams:[OCMArg any] completion:[OCMArg any]]).andForwardToRealObject().andDo(^(NSInvocation *__unused invocation) { - [self.context paymentAuthorizationControllerDidFinish:self.context.viewController]; // Simulate cancel after PI confirm begins + [self.context paymentAuthorizationControllerDidFinish:self.context.authorizationController]; // Simulate cancel after PI confirm begins }); __block NSString *clientSecret; @@ -233,7 +233,7 @@ }]; }; - [self.context paymentAuthorizationController:self.context.viewController + [self.context paymentAuthorizationController:self.context.authorizationController didAuthorizePayment:[STPFixtures simulatorApplePayPayment] handler:^(PKPaymentAuthorizationResult * __unused _Nonnull result) {}]; // Simulate user tapping 'Pay' button in Apple Pay @@ -261,10 +261,10 @@ // When the user taps 'Pay', PKPaymentAuthorizationController calls `didAuthorizePayment:completion:` // After you call its completion block, it calls `paymentAuthorizationControllerDidFinish:` XCTestExpectation *didCallAuthorizePaymentCompletion = [self expectationWithDescription:@"ApplePayContext called completion block of paymentAuthorizationController:didAuthorizePayment:completion:"]; - [self.context paymentAuthorizationController:self.context.viewController didAuthorizePayment:[STPFixtures simulatorApplePayPayment] handler:^(PKPaymentAuthorizationResult * _Nonnull result) { + [self.context paymentAuthorizationController:self.context.authorizationController didAuthorizePayment:[STPFixtures simulatorApplePayPayment] handler:^(PKPaymentAuthorizationResult * _Nonnull result) { XCTAssertEqual(expectedStatus, result.status); dispatch_async(dispatch_get_main_queue(), ^{ - [self.context paymentAuthorizationControllerDidFinish:self.context.viewController]; + [self.context paymentAuthorizationControllerDidFinish:self.context.authorizationController]; [didCallAuthorizePaymentCompletion fulfill]; }); }];