[英]How to test a private function inside an RxSwift observer?
observable.subscribe(onNext: { _ in
somePrivateFunction()
})
什么是 RxSwift 方法来测试当observable
接收到事件时somePrivateFunction
实际被调用? 由于订阅和 function 在同一个 class 我不能嘲笑它。
您需要检查是否在订阅中放置了可以阻止调用此 function 的任何逻辑。 如果有 - 可能值得将其提取到参数(例如过滤器),以便逻辑可以成为 stream 本身的一部分。
我假设 observable(源)是从另一个组件注入/重定向的(如果不是,很可能应该是)。 要模拟该信号,您可以使用TestableObservable
,您可以在此处阅读更多信息: http://adamborek.com/rxtests-rxactionsheet/
最后但同样重要的是 - 您需要确定somePrivateFunction()
执行的操作类型。 如果它设置了一些外部值 - 那么您可以测试来自该 function 的传出连接。 如果它设置了一些内部标志 - 您可以测试该标志的值是否已更改。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.