改造 errorBody() 应该 return 可选

Retrofit errorBody() should return Optional

假设我有一个带有以下断言的测试:

assertThat(response.isSuccess()).as(response.errorBody().string()).isTrue();

它会在响应成功时抛出 NullPointerException,因此测试永远不会通过。

我需要做这样的事情:

String errorDescription = response.errorBody() == null ? "" : response.errorBody().string();
assertThat(response.isSuccess()).as(errorDescription).isTrue();

这很丑。是否可以将 errorBody 包装在 optional 中,或者是否有更好的方法?

有人删除了我的回答,说我只提供了 url 到 github 的答案。这是我对 post:

的回答

在改造 github 上回答:https://github.com/square/retrofit/issues/1304

选项在 Android 上不可用。

这次强调了真实答案所以不会再删