Esempio n. 1
0
  @Test
  public void testSequenceTask() throws Exception {

    final List<String> sequence = new Vector<String>();

    SequenceTask seq = createSequence();

    seq.add(appender(sequence, "task1"));
    seq.add(appender(sequence, "task2"));
    seq.add(appender(sequence, "task3"));

    seq.schedule();

    seq.waitFor(3500, TimeUnit.MILLISECONDS);

    assertArrayEquals(new String[] {"task1", "task2", "task3"}, sequence.toArray(new String[0]));
  }
Esempio n. 2
0
  @Test
  public void testLargeSequenceInProgress() throws Exception {

    long count = 10;
    long loops = 1000;
    long total = count * loops;

    AtomicLong result = new AtomicLong(0);

    SequenceTask task = createSequence();

    task.add(scheduler(task, result, 1, count, loops - 1));

    task.schedule();

    task.waitFor();

    assertEquals(total * (total + 1) / 2, result.get());
  }
Esempio n. 3
0
  @Test
  public void testLargeSequence() throws Exception {

    long count = 500;

    AtomicLong result = new AtomicLong(0);

    SequenceTask task = createSequence();

    for (long i = 1; i <= count; i++) {
      task.add(addr(result, i));
    }

    task.schedule();

    task.waitFor();

    assertEquals(count * (count + 1) / 2, result.get());
  }