当调用这些函数时,我想返回200:
`when`(httpResponse.statusLine.statusCode).thenReturn(200)httpResponse是由创建的模拟
val httpResponse = mock(HttpResponse::class.java, RETURNS_DEEP_STUBS)我的问题是,当我使用RETURNS_DEEP_STUBS时,httpResponse是null。我猜这是因为HttpResponse是一个接口(?)。
如果我跳过RETURNS_DEEP_STUBS,我就不能在第一个statusLine之后调用任何函数
有可能模拟这样的界面吗?如果是这样的话,是怎么做的?
发布于 2019-05-20 21:38:03
只需创建另一个mock:
val httpResponseStub = mock(HttpResponse::class.java);
val statusLineStub= mock(StatusLine::class.java);
when(statusLineStub.statusCode).thenReturn(200);
when(httpResponseStub.statusLine).thenReturn(statusLineStub);循序渐进。
https://stackoverflow.com/questions/56221980
复制相似问题