ViewModel 有一个绑定到intap事件的输入(观察者)。这个观察者的类型是。UIButtonUIViewControllerAnyObserver<Void>
在我的单元测试中,这是我所期望的:
let correctValues: [Recorded<Event<Void>>] = Recorded.events(
.next(0, ()),
.completed(0)
)
我的测试观察者定义是:
private var voidEventsObserver: TestableObserver<Void>!
let scheduler = TestScheduler(initialClock: 0)
voidEventsObserver = scheduler.createObserver(Void.self)
断言声明:
XCTAssertEqual(voidEventsObserver.events, correctValues)
我收到以下错误:
表达式类型 '()' 在没有更多上下文的情况下是模棱两可的
在 Rx 中,Void事件是正常的,要正确测试 ViewModel,需要比较它们。eg .next(0, ()), .completed(0)etc.Void不是Equatable,而且它没有意义Equatable。但是,我需要断言事件是.nextor.error还是.completed。我如何断言那部分?