View Javadoc

1   package com.atlassian.core.task;
2   
3   import junit.framework.TestCase;
4   
5   /**
6    * Created by IntelliJ IDEA.
7    * User: ROSS
8    * Date: 25/03/2004
9    * Time: 17:41:32
10   * To change this template use File | Settings | File Templates.
11   */
12  public class ErrorQueueTaskQueueTestCase extends TestCase {
13      public void testTaskManager() {
14          final boolean[] task2executed = new boolean[1];
15  
16          ErrorQueuedTaskQueue queue = new ErrorQueuedTaskQueue();
17  
18          queue.setRetryCount(2);
19          DefaultTaskManager manager = new DefaultTaskManager(queue);
20          Task task1 = new Task() {
21              public void execute() throws Exception {
22                  throw new Exception();
23              }
24          };
25  
26          Task task2 = new Task() {
27              public void execute() throws Exception {
28                  task2executed[0] = true;
29              }
30          };
31  
32          manager.addTask(task1);
33          manager.addTask(task2);
34  
35          assertNotNull(manager.getTaskQueue());
36          assertEquals(2, manager.getTaskQueue().size());
37          manager.flush();
38          assertEquals(1, queue.size());
39          assertEquals(0, queue.getErrorQueue().size());
40          manager.flush();
41          assertEquals(1, queue.size());
42          assertEquals(0, queue.getErrorQueue().size());
43          manager.flush();
44          assertTrue(task2executed[0]);
45          assertEquals(0, queue.size());
46          assertEquals(1, queue.getErrorQueue().size());
47      }
48  }