模拟ApolloClient的查询调用以进行测试

问题描述

使用graphQl和ApolloClient的Kotlin Android应用。

我要测试此方法

fun myMethod(id: String): Single<List<MyEntity>> {
    val call = Query(id)
    return Rx2Apollo.from(apolloClient.query(call))
      .map { modeCode() }.firstOrError().onErrorReturn { emptyList() }
  }

是否有一种优雅的方法来模拟apolloClient.query(call)的响应,以便Rx2Apollo返回响应?

我尝试过使用RealApolloCall,使用自定义ApolloCall等,没有什么能说服我。 而且我不想提取和模拟整个Rx2Apollo.from(apolloClient.query(call))部分。使用嘲笑WebServer不适用,因为我不想测试apolloClient,所以我想模拟它的响应以测试其余部分。

一个解决的相关问题并未真正提及解决的最佳方法https://github.com/apollographql/apollo-android/issues/1144

谢谢!

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)