@Test
public void testThatActiveTaskCounterDecrementsWhnTaskCanceled() throws Exception {
final String url = "test://index";
final MockHttpTask task1 = new MockHttpTask();
task1.setRequest(new BasicHttpRequest(url));
task1.registerHandler(new CallbackHandler<BasicHttpRequest>() {
@Override
public void onProcessorResponse(BasicHttpRequest request) throws Exception {
sleep(2000);
}
@Override
public <U extends Provider<? extends BasicHttpRequest>> void beforeExecution(BasicHttpRequest request, U provider) {
}
});
final MockHttpTask task2 = new MockHttpTask();
task2.setRequest(new BasicHttpRequest(url));
task1.setFactory(factory);
task2.setFactory(factory);
final Future<BasicHttpRequest> task1future = processor.submit(task1);
processor.submit(task2);
sleep(500);//task2 should be already done here