Added for the delegate method
This commit is contained in:
parent
67f268a614
commit
3f6bcf356e
|
|
@ -1589,10 +1589,10 @@
|
|||
C88254001B8A752B00B02D69 /* RxTableViewDataSourceProxy.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = RxTableViewDataSourceProxy.swift; sourceTree = "<group>"; };
|
||||
C88254011B8A752B00B02D69 /* RxTableViewDelegateProxy.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = RxTableViewDelegateProxy.swift; sourceTree = "<group>"; };
|
||||
C88254021B8A752B00B02D69 /* RxTextViewDelegateProxy.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = RxTextViewDelegateProxy.swift; sourceTree = "<group>"; };
|
||||
C88254051B8A752B00B02D69 /* UIBarButtonItem+Rx.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; lineEnding = 0; path = "UIBarButtonItem+Rx.swift"; sourceTree = "<group>"; xcLanguageSpecificationIdentifier = xcode.lang.swift; };
|
||||
C88254051B8A752B00B02D69 /* UIBarButtonItem+Rx.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; lineEnding = 0; path = "UIBarButtonItem+Rx.swift"; sourceTree = "<group>"; };
|
||||
C88254061B8A752B00B02D69 /* UIButton+Rx.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = "UIButton+Rx.swift"; sourceTree = "<group>"; };
|
||||
C88254071B8A752B00B02D69 /* UICollectionView+Rx.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = "UICollectionView+Rx.swift"; sourceTree = "<group>"; };
|
||||
C88254081B8A752B00B02D69 /* UIControl+Rx.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; lineEnding = 0; path = "UIControl+Rx.swift"; sourceTree = "<group>"; xcLanguageSpecificationIdentifier = xcode.lang.swift; };
|
||||
C88254081B8A752B00B02D69 /* UIControl+Rx.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; lineEnding = 0; path = "UIControl+Rx.swift"; sourceTree = "<group>"; };
|
||||
C88254091B8A752B00B02D69 /* UIDatePicker+Rx.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = "UIDatePicker+Rx.swift"; sourceTree = "<group>"; };
|
||||
C882540A1B8A752B00B02D69 /* UIGestureRecognizer+Rx.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = "UIGestureRecognizer+Rx.swift"; sourceTree = "<group>"; };
|
||||
C882540B1B8A752B00B02D69 /* UIImageView+Rx.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = "UIImageView+Rx.swift"; sourceTree = "<group>"; };
|
||||
|
|
|
|||
|
|
@ -68,6 +68,17 @@ extension UISearchBar {
|
|||
|
||||
return ControlProperty(values: source, valueSink: bindingObserver)
|
||||
}
|
||||
|
||||
/**
|
||||
Reactive wrapper for delegate method `searchBarCancelButtonClicked`.
|
||||
*/
|
||||
public var rx_cancelTap: ControlEvent<Void> {
|
||||
let source: Observable<Void> = rx_delegate.observe("searchBarCancelButtonClicked:")
|
||||
.map { _ in
|
||||
return ()
|
||||
}
|
||||
return ControlEvent(events: source)
|
||||
}
|
||||
}
|
||||
|
||||
#endif
|
||||
|
|
|
|||
|
|
@ -76,4 +76,23 @@ class UISearchBarTests : RxTest {
|
|||
_ = Observable.just(1).bindTo(searchBar.rx_selectedScopeButtonIndex)
|
||||
XCTAssertEqual(searchBar.selectedScopeButtonIndex, 1)
|
||||
}
|
||||
|
||||
func testCancelTap() {
|
||||
let searchBar = UISearchBar(frame: CGRectMake(0, 0, 1, 1))
|
||||
|
||||
var tapped = false
|
||||
|
||||
let _ = searchBar.rx_cancelTap.subscribeNext { _ in
|
||||
tapped = true
|
||||
}
|
||||
|
||||
XCTAssertFalse(tapped)
|
||||
searchBar.delegate!.searchBarCancelButtonClicked!(searchBar)
|
||||
XCTAssertTrue(tapped)
|
||||
}
|
||||
|
||||
func testCancelTap_DelegateEventCompletesOnDealloc() {
|
||||
let createView: () -> UISearchBar = { UISearchBar(frame: CGRectMake(0, 0, 1, 1)) }
|
||||
ensureEventDeallocated(createView) { (view: UISearchBar) in view.rx_cancelTap }
|
||||
}
|
||||
}
|
||||
Loading…
Reference in New Issue