- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有
public Single<APIResponse> getPayment(Identity identity, String id) {
return client.getPayment(identity, id).onErrorReturn(__ -> getTheSameEntityIfError(id));
}
client
是一个调用外部服务的网络服务客户端如果 client.getPayment
返回任何错误,它将调用 getTheSameEntityIfError(id)
我正在尝试编写一个测试用例来覆盖此方法
@RunWith(MockitoJUnitRunner.class)
public class AdapterTest {
@Mock
PaymentsClient client;
@InjectMocks
Adapter adapter;
Identity identity = testIdentity();
PaymentEntity payment = testPayment();
@Test
public void getPayment() {
when(client.getPayment(any(), any())).thenThrow(new NotFoundException());
APIResponse apiResponse = adapter.getPayment(identity, "id").blockingGet();
assertThat(payment.getId(), equalTo(apiResponse.getId(1)));
}
}
在这种情况下,我想模拟外部服务 client.getPayment()
返回错误,然后调用 getTheSameEntityIfError(id)
。我预计将调用 onErrorReturn
操作,但它总是抛出 NotFoundException
并且 onErrorReturn
从未被调用。
知道出了什么问题吗?
最佳答案
您模拟 client.getPayment()
来抛出而不是返回 RxJava 可以使用的东西,因此 RxJava 甚至不参与这种情况。使 client.getPayment
返回 Single.error()
。
关于java - 测试用例运行时不会调用 Rx onErrorReturn,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56966169/
我最近购买了《C 编程语言》并尝试了 Ex 1-8这是代码 #include #include #include /* * */ int main() { int nl,nt,nb;
早上好!我有一个变量“var”,可能为 0。我检查该变量是否为空,如果不是,我将该变量保存在 php session 中,然后调用另一个页面。在这个新页面中,我检查我创建的 session 是否为空,
我正在努力完成 Learn Python the Hard Way ex.25,但我无法理解某些事情。这是脚本: def break_words(stuff): """this functio
我是一名优秀的程序员,十分优秀!