View Javadoc

1   package com.atlassian.core.task;
2   
3   import junit.framework.TestCase;
4   
5   import java.util.HashMap;
6   import java.util.Map;
7   
8   /**
9    * Created by IntelliJ IDEA.
10   * User: ROSS
11   * Date: 25/03/2004
12   * Time: 16:26:41
13   * To change this template use File | Settings | File Templates.
14   */
15  public class MultiQueueTaskManagerTestCase extends TestCase {
16      public void testTaskManager() {
17          final boolean[] task1executed = new boolean[1];
18          final boolean[] task2executed = new boolean[1];
19          final boolean[] task3executed = new boolean[1];
20  
21          TaskQueue queue1 = new DefaultTaskQueue();
22          TaskQueue queue2 = new DefaultTaskQueue();
23          Map<String, TaskQueue> queues = new HashMap<String, TaskQueue>();
24          queues.put("queue1", queue1);
25          queues.put("queue2", queue2);
26  
27          DefaultMultiQueueTaskManager manager = new DefaultMultiQueueTaskManager(queues);
28          Task task1 = new Task() {
29              public void execute() throws Exception {
30                  task1executed[0] = true;
31              }
32          };
33  
34          Task task2 = new Task() {
35              public void execute() throws Exception {
36                  task2executed[0] = true;
37              }
38          };
39  
40          Task task3 = new Task() {
41              public void execute() throws Exception {
42                  task3executed[0] = true;
43              }
44          };
45  
46          manager.addTask("queue1", task1);
47          manager.addTask("queue1", task2);
48          manager.addTask("queue2", task3);
49  
50          assertNotNull(manager.getTaskQueue("queue1"));
51          assertNotNull(manager.getTaskQueue("queue2"));
52          assertEquals(2, manager.getTaskQueue("queue1").size());
53          assertEquals(1, manager.getTaskQueue("queue2").size());
54          manager.flush();
55  
56          assertTrue(task1executed[0]);
57          assertTrue(task2executed[0]);
58          assertTrue(task3executed[0]);
59  
60      }
61  }