AsyncResourceDisposerTest.java 文件源码

java
阅读 21 收藏 0 点赞 0 评论 0

项目:resource-disposer-plugin 作者:
@Test
public void neverDispose() throws Throwable {
    final IOException error = new IOException("to be thrown");

    Disposable disposable = spy(new ThrowDisposable(error));

    @SuppressWarnings("deprecation")
    AsyncResourceDisposer.WorkItem item = disposer.disposeAndWait(disposable).get();

    Set<AsyncResourceDisposer.WorkItem> remaining = disposer.getBacklog();
    assertEquals(1, remaining.size());
    assertThat(remaining.iterator().next(), equalTo(item));
    assertEquals(error, ((Disposable.State.Thrown) item.getLastState()).getCause());

    verify(disposable).dispose();
    assertThat(disposer.getBacklog(), not(IsEmptyCollection.<AsyncResourceDisposer.WorkItem>empty()));

    int itemId = item.getId();
    HtmlPage page = j.createWebClient().goTo(disposer.getUrl());
    page = page.getFormByName("stop-tracking-" + itemId).getInputByName("submit").click();
    assertThat(page.getWebResponse().getContentAsString(), containsString(disposer.getDisplayName())); // Redirected back

    assertThat(disposer.getBacklog(), emptyCollectionOf(AsyncResourceDisposer.WorkItem.class));
}
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号