进行改造会产生无效的成功模拟反应?

时间:2018-08-06 11:18:39

标签: android kotlin retrofit2 okhttp3

嗨,我正在尝试模拟我的请求响应api之一,以返回Void类型的响应成功,但是由于Void无法初始化且是私有的,我似乎无法做到这一点。

我正在尝试这样做:V

val responseMock = Response.success(Void())

但没有喜悦。

我什至尝试设置Response.success(null),它抱怨在我的情况下responseMock对象的类型必须为Void,因为我的api方法返回了以下内容:

Single<Response<Void>>

但具有response.success(null)会产生

Single<Response<Nothing?>>?

1 个答案:

答案 0 :(得分:4)

如果在Kotlin中定义,Single<Response<Void>>是不可能的类型。 Void只能为null,因此类型必须为Single<Response<Void?>>,以使Response.success<Void?>(null)为有效值。