Как проверить частную функцию внутри наблюдателя RxSwift?
observable.subscribe(onNext: { _ in
somePrivateFunction()
})
Как RxSwift может это проверить, когда observable
получает событие somePrivateFunction
на самом деле звонят или нет? Поскольку подписка и функция находятся в одном классе, я не могу над этим издеваться.
1 ответ
Вам необходимо проверить, размещена ли в подписке какая-либо логика, которая может заблокировать вызов этой функции. Если есть - возможно, стоит выделить его в параметр (например, фильтр), чтобы логика могла быть частью самого потока.
Я предполагаю, что наблюдаемый (источник) вводится / перенаправляется из другого компонента (если это не так, скорее всего, так и должно быть). Чтобы издеваться над этим сигналом, вы можете использоватьTestableObservable
, вы можете прочитать здесь: http://adamborek.com/rxtests-rxactionsheet/
И последнее, но не менее важное: вам необходимо определить, какое действие somePrivateFunction()
делает. Если он устанавливает какие-то внешние значения - вы можете проверить это исходящее соединение с помощью этой функции. Если он устанавливает какие-то внутренние флаги - вы можете проверить, изменилось ли значение этого флага.