Как протестировать презентатора в mvp-дизайне во флаттере, когда он зависит от вида? - PullRequest
0 голосов
/ 09 июля 2019

Я хочу протестировать функции докладчика в mvp-дизайне во флаттере, но мне не удалось создать его экземпляр для тестирования, поскольку он зависит от представления, а представление - это состояние виджета с состоянием.

Когда я даю null как представление, проверяемая функция завершается неудачно, bc пытается вызвать функцию представления.

Контракт:

abstract class View extends BaseView {

  setSelectedWord(String word);

}

abstract class Presenter {
   toTest(word);
}

Ведущий:

class PresenterImpl implements Presenter {
  ///
  View _view;

  @override
  toTest(String word) {
    // do sth.
    _view.setSelectedWord(word);
  }
}

Вид:

class Screen extends BaseScreen {
  Screen({Key key}) : super(key: key);

  @override
  _State createState() => _State();
}

class _State extends BaseState implementsView {
  ///
  Presenter _presenter;

  setSelectedWord(word){
     //do sth.
   }
}

Как правильно настроить докладчик для тестирования в этой настройке?

...