@@ -14,7 +14,7 @@ import RxTest
14
14
15
15
class MapToTests : XCTestCase {
16
16
17
- let numbers : [ Int ? ] = [ 1 , nil , Int ? ( 3 ) ]
17
+ private let numbers : [ Int ? ] = [ 1 , nil , Int ? ( 3 ) ]
18
18
private var observer : TestableObserver < String > !
19
19
20
20
override func setUp( ) {
@@ -48,3 +48,72 @@ class MapToTests: XCTestCase {
48
48
XCTAssertEqual ( observer. events, correctValues)
49
49
}
50
50
}
51
+
52
+ // MARK: - Single
53
+ extension MapToTests {
54
+ func testSingleReplaceSuccess( ) {
55
+ // Given
56
+ let expectedValue = " candy "
57
+ let scheduler = TestScheduler ( initialClock: 0 )
58
+ // When
59
+ let result = scheduler. start {
60
+ Single . just ( 1 ) . mapTo ( expectedValue) . asObservable ( )
61
+ }
62
+ // Then
63
+ XCTAssertEqual ( result. events, [
64
+ . next( TestScheduler . Defaults. subscribed, expectedValue) ,
65
+ . completed( TestScheduler . Defaults. subscribed)
66
+ ] )
67
+ }
68
+
69
+ func testSingleNoReplaceFailure( ) {
70
+ // Given
71
+ let scheduler = TestScheduler ( initialClock: 0 )
72
+ // When
73
+ let result = scheduler. start {
74
+ Single < Int > . error ( testError) . mapTo ( " candy " ) . asObservable ( )
75
+ }
76
+ // Then
77
+ XCTAssertEqual ( result. events, [ . error( TestScheduler . Defaults. subscribed, testError) ] )
78
+ }
79
+ }
80
+
81
+ // MARK: - Maybe
82
+ extension MapToTests {
83
+ func testMaybeReplaceSuccess( ) {
84
+ // Given
85
+ let expectedValue = " candy "
86
+ let scheduler = TestScheduler ( initialClock: 0 )
87
+ // When
88
+ let result = scheduler. start {
89
+ Maybe . just ( 1 ) . mapTo ( expectedValue) . asObservable ( )
90
+ }
91
+ // Then
92
+ XCTAssertEqual ( result. events, [
93
+ . next( TestScheduler . Defaults. subscribed, expectedValue) ,
94
+ . completed( TestScheduler . Defaults. subscribed)
95
+ ] )
96
+ }
97
+
98
+ func testMaybeNoReplaceFailure( ) {
99
+ // Given
100
+ let scheduler = TestScheduler ( initialClock: 0 )
101
+ // When
102
+ let result = scheduler. start {
103
+ Maybe < Int > . error ( testError) . mapTo ( " candy " ) . asObservable ( )
104
+ }
105
+ // Then
106
+ XCTAssertEqual ( result. events, [ . error( TestScheduler . Defaults. subscribed, testError) ] )
107
+ }
108
+
109
+ func testMaybeNoReplaceEmpty( ) {
110
+ // Given
111
+ let scheduler = TestScheduler ( initialClock: 0 )
112
+ // When
113
+ let result = scheduler. start {
114
+ Maybe < Int > . empty ( ) . mapTo ( " candy " ) . asObservable ( )
115
+ }
116
+ // Then
117
+ XCTAssertEqual ( result. events, [ . completed( TestScheduler . Defaults. subscribed) ] )
118
+ }
119
+ }
0 commit comments