Skip to content

Commit

Permalink
Execute purchase check on purchase or purchase restoration
Browse files Browse the repository at this point in the history
Issue #238
  • Loading branch information
eofster committed Sep 22, 2017
1 parent 8965f00 commit 6cf5666
Show file tree
Hide file tree
Showing 2 changed files with 44 additions and 0 deletions.
16 changes: 16 additions & 0 deletions Telephone/CallHistoryViewEventTarget.swift
Expand Up @@ -51,3 +51,19 @@ extension CallHistoryViewEventTarget: CallHistoryEventTarget {
purchaseCheck.execute()
}
}

extension CallHistoryViewEventTarget: StoreEventTarget {
func didPurchase() {
purchaseCheck.execute()
}

func didRestorePurchases() {
purchaseCheck.execute()
}

func didStartPurchasingProduct(withIdentifier identifier: String) {}
func didFailPurchasing(error: String) {}
func didCancelPurchasing() {}
func didFailRestoringPurchases(error: String) {}
func didCancelRestoringPurchases() {}
}
28 changes: 28 additions & 0 deletions TelephoneTests/CallHistoryViewEventTargetTests.swift
Expand Up @@ -76,6 +76,34 @@ final class CallHistoryViewEventTargetTests: XCTestCase {
XCTAssertTrue(purchaseCheck.didCallExecute)
}

func testExecutesPurchaseCheckUseCaseOnDidPurchase() {
let purchaseCheck = UseCaseSpy()
let sut = CallHistoryViewEventTarget(
recordsGet: UseCaseSpy(),
purchaseCheck: purchaseCheck,
recordRemove: CallHistoryRecordRemoveUseCaseFactorySpy(remove: UseCaseSpy()),
callMake: CallHistoryCallMakeUseCaseFactorySpy(callMake: UseCaseSpy())
)

sut.didPurchase()

XCTAssertTrue(purchaseCheck.didCallExecute)
}

func testExecutesPurchaseCheckUseCaseOnDidRestorePurchases() {
let purchaseCheck = UseCaseSpy()
let sut = CallHistoryViewEventTarget(
recordsGet: UseCaseSpy(),
purchaseCheck: purchaseCheck,
recordRemove: CallHistoryRecordRemoveUseCaseFactorySpy(remove: UseCaseSpy()),
callMake: CallHistoryCallMakeUseCaseFactorySpy(callMake: UseCaseSpy())
)

sut.didRestorePurchases()

XCTAssertTrue(purchaseCheck.didCallExecute)
}

func testCreatesCallHistoryCallMakeUseCaseWithExpectedIdentifierOnDidPickRecord() {
let factory = CallHistoryCallMakeUseCaseFactorySpy(callMake: UseCaseSpy())
let sut = CallHistoryViewEventTarget(
Expand Down

0 comments on commit 6cf5666

Please sign in to comment.