Commit eed56e94 by Dima Bart

Adjust test for new architecture.

parent 1fc243ad
...@@ -34,6 +34,7 @@ ...@@ -34,6 +34,7 @@
#import "BUYShopifyErrorCodes.h" #import "BUYShopifyErrorCodes.h"
#import "BUYAccountCredentials.h" #import "BUYAccountCredentials.h"
#import "BUYClient+Customers.h" #import "BUYClient+Customers.h"
#import "BUYApplePayToken.h"
NSString * const BUYFakeCustomerToken = @"dsfasdgafdg"; NSString * const BUYFakeCustomerToken = @"dsfasdgafdg";
...@@ -130,7 +131,7 @@ NSString * const BUYFakeCustomerToken = @"dsfasdgafdg"; ...@@ -130,7 +131,7 @@ NSString * const BUYFakeCustomerToken = @"dsfasdgafdg";
{ {
BUYCheckout *checkout = [[BUYCheckout alloc] initWithModelManager:self.client.modelManager JSONDictionary:@{@"token": @"abcdef", @"payment_due": @0}]; BUYCheckout *checkout = [[BUYCheckout alloc] initWithModelManager:self.client.modelManager JSONDictionary:@{@"token": @"abcdef", @"payment_due": @0}];
NSURLSessionDataTask *task = [self.client completeCheckout:checkout completion:nil]; NSURLSessionDataTask *task = [self.client completeCheckout:checkout paymentToken:nil completion:nil];
XCTAssertNotNil(task); XCTAssertNotNil(task);
} }
...@@ -196,23 +197,15 @@ NSString * const BUYFakeCustomerToken = @"dsfasdgafdg"; ...@@ -196,23 +197,15 @@ NSString * const BUYFakeCustomerToken = @"dsfasdgafdg";
- (void)testCheckoutWithApplePayToken - (void)testCheckoutWithApplePayToken
{ {
__block int callbackCount = 0; id<BUYPaymentToken> token = [[BUYApplePayToken alloc] initWithPaymentToken:[PKPaymentToken new]];
XCTAssertThrows(
[self.client completeCheckout:nil withApplePayToken:[PKPaymentToken new] completion:^(BUYCheckout *checkout, NSError *error) { [self.client completeCheckout:nil paymentToken:token completion:nil]
callbackCount++; );
XCTAssertEqual(error.code, BUYShopifyError_InvalidCheckoutObject);
}];
BUYCheckout *checkout = [[BUYCheckout alloc] initWithModelManager:self.client.modelManager JSONDictionary:@{@"token": @"abcdef", @"payment_due": @0}];
[self.client completeCheckout:checkout withApplePayToken:nil completion:^(BUYCheckout *checkout, NSError *error) { BUYCheckout *checkout = [[BUYCheckout alloc] initWithModelManager:self.client.modelManager JSONDictionary:@{@"token": @"abcdef", @"payment_due": @0}];
callbackCount++; XCTAssertNoThrow(
XCTAssertEqual(error.code, BUYShopifyError_NoApplePayTokenSpecified); [self.client completeCheckout:checkout paymentToken:nil completion:nil]
}]; );
XCTAssertEqual(callbackCount, 2);
[self testProductsInCollectionWithSortOrderCollectionDefault];
} }
- (void)testQueryItemsConversion - (void)testQueryItemsConversion
......
...@@ -220,7 +220,7 @@ ...@@ -220,7 +220,7 @@
XCTAssertEqualObjects(_checkout.email, @"test@test.com"); XCTAssertEqualObjects(_checkout.email, @"test@test.com");
} }
- (void)addCreditCardToCheckout - (id<BUYPaymentToken>)addCreditCardToCheckout
{ {
[OHHTTPStubs stubRequestsPassingTest:^BOOL(NSURLRequest * _Nonnull request) { [OHHTTPStubs stubRequestsPassingTest:^BOOL(NSURLRequest * _Nonnull request) {
return [self shouldUseMocks]; return [self shouldUseMocks];
...@@ -229,19 +229,23 @@ ...@@ -229,19 +229,23 @@
}]; }];
BUYCreditCard *creditCard = [self creditCard]; BUYCreditCard *creditCard = [self creditCard];
__block id<BUYPaymentToken> token = nil;
XCTestExpectation *expectation = [self expectationWithDescription:NSStringFromSelector(_cmd)]; XCTestExpectation *expectation = [self expectationWithDescription:NSStringFromSelector(_cmd)];
[self.client storeCreditCard:creditCard checkout:_checkout completion:^(BUYCheckout *returnedCheckout, NSString *paymentSessionId, NSError *error) { [self.client storeCreditCard:creditCard checkout:_checkout completion:^(BUYCheckout *returnedCheckout, id<BUYPaymentToken> paymentToken, NSError *error) {
XCTAssertNil(error); XCTAssertNil(error);
XCTAssertNotNil(paymentSessionId); XCTAssertNotNil(paymentToken);
XCTAssertNotNil(returnedCheckout); XCTAssertNotNil(returnedCheckout);
_checkout = returnedCheckout; _checkout = returnedCheckout;
token = paymentToken;
[expectation fulfill]; [expectation fulfill];
}]; }];
[self waitForExpectationsWithTimeout:10 handler:^(NSError *error) { [self waitForExpectationsWithTimeout:10 handler:^(NSError *error) {
XCTAssertNil(error); XCTAssertNil(error);
}]; }];
return token;
} }
- (BUYCreditCard *)creditCard - (BUYCreditCard *)creditCard
...@@ -256,7 +260,7 @@ ...@@ -256,7 +260,7 @@
return creditCard; return creditCard;
} }
- (void)completeCheckout - (void)completeCheckoutWithToken:(id<BUYPaymentToken>)paymentToken
{ {
[OHHTTPStubs stubRequestsPassingTest:^BOOL(NSURLRequest * _Nonnull request) { [OHHTTPStubs stubRequestsPassingTest:^BOOL(NSURLRequest * _Nonnull request) {
return [self shouldUseMocks]; return [self shouldUseMocks];
...@@ -265,7 +269,7 @@ ...@@ -265,7 +269,7 @@
}]; }];
XCTestExpectation *expectation = [self expectationWithDescription:NSStringFromSelector(_cmd)]; XCTestExpectation *expectation = [self expectationWithDescription:NSStringFromSelector(_cmd)];
[self.client completeCheckout:_checkout completion:^(BUYCheckout *returnedCheckout, NSError *error) { [self.client completeCheckout:_checkout paymentToken:paymentToken completion:^(BUYCheckout *returnedCheckout, NSError *error) {
XCTAssertNil(error); XCTAssertNil(error);
XCTAssertNotNil(returnedCheckout); XCTAssertNotNil(returnedCheckout);
...@@ -988,8 +992,9 @@ ...@@ -988,8 +992,9 @@
[self createCheckout]; [self createCheckout];
[self fetchShippingRates]; [self fetchShippingRates];
[self updateCheckout]; [self updateCheckout];
[self addCreditCardToCheckout];
[self completeCheckout]; id<BUYPaymentToken> token = [self addCreditCardToCheckout];
[self completeCheckoutWithToken:token];
[self pollUntilCheckoutIsComplete]; [self pollUntilCheckoutIsComplete];
[self verifyCompletedCheckout]; [self verifyCompletedCheckout];
...@@ -1036,8 +1041,9 @@ ...@@ -1036,8 +1041,9 @@
[self updateCheckout]; [self updateCheckout];
//We use a credit card here because we're not generating apple pay tokens in the tests //We use a credit card here because we're not generating apple pay tokens in the tests
[self addCreditCardToCheckout]; id<BUYPaymentToken> token = [self addCreditCardToCheckout];
[self completeCheckout]; [self completeCheckoutWithToken:token];
[self pollUntilCheckoutIsComplete]; [self pollUntilCheckoutIsComplete];
[self verifyCompletedCheckout]; [self verifyCompletedCheckout];
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment