Как проверить частную функцию внутри наблюдателя RxSwift?

observable.subscribe(onNext: { _ in
    somePrivateFunction()
})

Как RxSwift может это проверить, когда observable получает событие somePrivateFunctionна самом деле звонят или нет? Поскольку подписка и функция находятся в одном классе, я не могу над этим издеваться.

1 ответ

Вам необходимо проверить, размещена ли в подписке какая-либо логика, которая может заблокировать вызов этой функции. Если есть - возможно, стоит выделить его в параметр (например, фильтр), чтобы логика могла быть частью самого потока.

Я предполагаю, что наблюдаемый (источник) вводится / перенаправляется из другого компонента (если это не так, скорее всего, так и должно быть). Чтобы издеваться над этим сигналом, вы можете использоватьTestableObservable, вы можете прочитать здесь: http://adamborek.com/rxtests-rxactionsheet/

И последнее, но не менее важное: вам необходимо определить, какое действие somePrivateFunction()делает. Если он устанавливает какие-то внешние значения - вы можете проверить это исходящее соединение с помощью этой функции. Если он устанавливает какие-то внутренние флаги - вы можете проверить, изменилось ли значение этого флага.

Другие вопросы по тегам