【问题标题】:Bloc: how to mock the get stateBloc:如何模拟获取状态
【发布时间】:2019-11-25 23:58:14
【问题描述】:

这是我的测试:

 MockBloc bloc = MockBloc();
        when (bloc.state).thenAnswer((_) => State)

我想给出一个特定的状态,但是,如果我尝试在那里简单地写 MyState(),IDE 只会说

不是流

我怎样才能通过State

【问题讨论】:

    标签: flutter mocking state bloc


    【解决方案1】:

    你必须让你的模拟返回一个状态流,而不是状态对象。

    final controller = StreamController<BlocState>();
    when(bloc.state).thenAnswer((_) => controller.stream);
    

    然后你可以给控制器添加新的状态

    controller.add(MyState());
    

    【讨论】:

      猜你喜欢
      • 2019-08-09
      • 2020-05-06
      • 2019-08-04
      • 2023-01-17
      • 2019-09-14
      • 1970-01-01
      • 2020-12-02
      • 2021-03-19
      • 2020-06-15
      相关资源
      最近更新 更多