我想对一个使用 Android DownloadManager 服务的类进行单元测试,但我不确定如何去做。我应该实际使用 DownloadManager 服务还是有什么方法可以模拟它?我宁愿不让我的测试调用外部 Web 服务器。我可以使用现有的测试库吗?
小智 1
要知道的一件重要的事情是下载管理器请求的计数从 -1 开始。因此,如果您将请求放入队列,则请求计数将为 0。
写下你的测试
public void shouldEnqueueRequest() {
//...
//...
verify(downloadManager, times(1)).enqueue(anyObject());
//Is the DownloadManager empty
assertThat(shadowOf(downloadManager).getRequestCount(), greaterThan(-1));
//Get the request from the DownloadManager
ShadowRequest realRequest = shadowOf(shadowOf(downloadManager).getRequest(0));
assertThat(realRequest, notNullValue());
assertThat(realRequest.getDescription(), equalTo("Your description"));
assertThat(realRequest.getTitle(), equalTo(APP_NAME));
}
Run Code Online (Sandbox Code Playgroud)| 归档时间: |
|
| 查看次数: |
625 次 |
| 最近记录: |