Slide 107
Slide 107 text
UnioStreamͷςετ
class SearchViewStreamTests: XCTestCase {
var testTarget: SearchViewStream!
var mockSearchAPIStream: MockSearchAPIStream!
override func setUp() {
self.mockSearchAPIStream = MockSearchAPIStream()
self.testTarget = SearchViewStream(
input: .init(),
state: .init(),
extra: .init(apiAction: mockSearchAPIStream),
logic: .init()
)
}
func test_input_textʹจࣈྻΛ͠_searchΛ࣮ߦ͢Δͱ_execute͕ݺΕΔ() {
let result = BehaviorRelay(value: nil)
let disposable = mockSearchAPIStream._input.execute.bind(to: result)
let expected = "test-query"
testTarget.input.accept(expected, for: \.text)
testTarget.input.accept((), for: \.search)
XCTAssertEqual(result.value, expected)
disposable.dispose()
}
}