File tree Expand file tree Collapse file tree 2 files changed +27
-0
lines changed Expand file tree Collapse file tree 2 files changed +27
-0
lines changed Original file line number Diff line number Diff line change
1
+ extension Mapping where MappedUpdate: Equatable
2
+ {
3
+ public func select( _ default: MappedUpdate ) -> Mapping < O , Void >
4
+ {
5
+ return map ( prefilter: { $0 == `default` } ) { _ in }
6
+ }
7
+ }
8
+
1
9
extension Mapping
2
10
{
3
11
public func new< Value> ( ) -> Mapping < O , Value >
Original file line number Diff line number Diff line change @@ -163,6 +163,25 @@ class SwiftObserverTests: XCTestCase
163
163
XCTAssert ( !didFire)
164
164
}
165
165
166
+ func testMappingSelect( )
167
+ {
168
+ let textMapping = Var ( ) . new ( ) . unwrap ( " " ) . select ( " test " )
169
+
170
+ var didFire = false
171
+
172
+ controller. observe ( textMapping)
173
+ {
174
+ didFire = true
175
+ }
176
+
177
+ textMapping. source <- " test "
178
+ XCTAssert ( didFire)
179
+
180
+ didFire = false
181
+ textMapping. source <- " test2 "
182
+ XCTAssert ( !didFire)
183
+ }
184
+
166
185
func testMultiplication( )
167
186
{
168
187
XCTAssertEqual ( Var ( 2 ) * Var( 7 ) , 14 )
You can’t perform that action at this time.
0 commit comments