TestError.swift 991 B

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. //
  2. // TestError.swift
  3. // ReactiveCocoa
  4. //
  5. // Created by Almas Sapargali on 1/26/15.
  6. // Copyright (c) 2015 GitHub. All rights reserved.
  7. //
  8. import ReactiveCocoa
  9. import Result
  10. enum TestError: Int {
  11. case Default = 0
  12. case Error1 = 1
  13. case Error2 = 2
  14. }
  15. extension TestError: ErrorType {
  16. }
  17. internal extension SignalProducerType {
  18. /// Halts if an error is emitted in the receiver signal.
  19. /// This is useful in tests to be able to just use `startWithNext`
  20. /// in cases where we know that an error won't be emitted.
  21. func assumeNoErrors() -> SignalProducer<Value, NoError> {
  22. return self.lift { $0.assumeNoErrors() }
  23. }
  24. }
  25. internal extension SignalType {
  26. /// Halts if an error is emitted in the receiver signal.
  27. /// This is useful in tests to be able to just use `startWithNext`
  28. /// in cases where we know that an error won't be emitted.
  29. func assumeNoErrors() -> Signal<Value, NoError> {
  30. return self.mapError { error in
  31. fatalError("Unexpected error: \(error)")
  32. ()
  33. }
  34. }
  35. }