MockActionSheetPresenter.swift 1.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. //
  2. // MockActionSheetPresenter.swift
  3. // SheeeeeeeeetTests
  4. //
  5. // Created by Daniel Saidi on 2018-04-27.
  6. // Copyright © 2018 Daniel Saidi. All rights reserved.
  7. //
  8. import Sheeeeeeeeet
  9. class MockActionSheetPresenter: ActionSheetPresenter {
  10. var events = ActionSheetPresenterEvents()
  11. var isDismissableWithTapOnBackground = false
  12. var dismissInvokeCount = 0
  13. var dismissInvokeCompletions = [() -> ()]()
  14. var presentInvokeCount = 0
  15. var presentInvokeCompletions = [() -> ()]()
  16. var presentInvokeSheets = [ActionSheet]()
  17. var presentInvokeViewControllers = [UIViewController]()
  18. var presentInvokeViews = [UIView?]()
  19. var presentInvokeItems = [UIBarButtonItem]()
  20. var refreshActionSheetInvokeCount = 0
  21. func dismiss(completion: @escaping () -> ()) {
  22. dismissInvokeCount += 1
  23. dismissInvokeCompletions.append(completion)
  24. }
  25. func present(sheet: ActionSheet, in vc: UIViewController, from view: UIView?, completion: @escaping () -> ()) {
  26. presentInvokeCount += 1
  27. presentInvokeSheets.append(sheet)
  28. presentInvokeViewControllers.append(vc)
  29. presentInvokeViews.append(view)
  30. presentInvokeCompletions.append(completion)
  31. }
  32. func present(sheet: ActionSheet, in vc: UIViewController, from item: UIBarButtonItem, completion: @escaping () -> ()) {
  33. presentInvokeCount += 1
  34. presentInvokeSheets.append(sheet)
  35. presentInvokeViewControllers.append(vc)
  36. presentInvokeItems.append(item)
  37. presentInvokeCompletions.append(completion)
  38. }
  39. func refreshActionSheet() {
  40. refreshActionSheetInvokeCount += 1
  41. }
  42. }