Package com.level3.meanwhile

Examples of com.level3.meanwhile.TaskQueueTest


        TaskQueueManager.setMaximumThreadCount(QUEUE_NAME,1);
        //Allow some time to bring the thread count back down
        stopWatch.block(500);
       
        //Cancel by Task
        BaseChain task1 = new MeanwhileTest.TimerTask(200L);
        BaseChain task2 = new MeanwhileTest.TimerTask(200L);
        BaseChain task3 = new MeanwhileTest.TimerTask(200L);
        BaseChain task4 = new MeanwhileTest.TimerTask(200L);
        BaseChain task5 = new MeanwhileTest.TimerTask(200L);
        BaseChain independentTask = new MeanwhileTest.TimerTask(200L);
        task2.chain(task3);
        task3.chain(task4);
        task4.chain(task5);
       
        List<Task> tasks = new ArrayList<Task>();
View Full Code Here


        TaskQueueManager.setMaximumThreadCount(QUEUE_NAME,1);
        //Allow some time to bring the thread count back down
        stopWatch.block(500);
       
        //Cancel by Task
        BaseChain task2 = new MeanwhileTest.TimerTask(500L);
        BaseChain task3 = new MeanwhileTest.TimerTask(500L);

        BaseChain task1a = new MeanwhileTest.TimerTask(100L);
        BaseChain task2a = new MeanwhileTest.TimerTask(100L);
        BaseChain task3a = new MeanwhileTest.TimerTask(100L);
       
        task2a.chain(task3a);
        task1a.chain(task2a);
       
        TaskQueueManager.execute(QUEUE_NAME,task2);
        TaskQueueManager.execute(QUEUE_NAME,task3);
        TaskQueueManager.execute(OTHER_QUEUE, task1a);
        stopWatch.block(400);
       
        assertEquals(TaskStatus.SUCCESS,task1a.getStatus());
        assertEquals(TaskStatus.SUCCESS,task2a.getStatus());
        assertEquals(TaskStatus.SUCCESS,task3a.getStatus());
        assertEquals(TaskStatus.WORKING,task2.getStatus());
        assertEquals(TaskStatus.QUEUED,task3.getStatus());
    }
View Full Code Here

   
    @Test
    public void testStageFailOnChainFailure() throws Exception {
        // allow time to grow pool
        Stage stage = new Stage();
        BaseChain task1 = new SuccessTask();
        BaseChain task2 = new FailTask();
        BaseChain task1a = new SuccessTask();
        BaseChain task2a = new SuccessTask();
       
        task1.chain(task1a);
        task2.chain(task2a);
        stage.stage(task1);
        stage.stage(task2);
       
        manager.blockingSubmit(stage);
       
        assertEquals("Stage failed",TaskStatus.FAILED,stage.getStatus());
        assertEquals("Task 2 failed",TaskStatus.FAILED,task2.getStatus());
        assertEquals("Task 2a canceled",TaskStatus.CANCELED,task2a.getStatus());
        assertEquals("Task 1 success",TaskStatus.SUCCESS,task1.getStatus());
        assertEquals("Task 1a success",TaskStatus.SUCCESS,task1a.getStatus());
       
        stage = new Stage();
        task1 = new SuccessTask();
        task2 = new SuccessTask();
        task1a = new SuccessTask();
        task2a = new FailTask();
       
        task1.chain(task1a);
        task2.chain(task2a);
        stage.stage(task1);
        stage.stage(task2);
       
        manager.blockingSubmit(stage);
       
        assertEquals("Stage failed",TaskStatus.FAILED,stage.getStatus());
        assertEquals("Task 2 failed",TaskStatus.SUCCESS,task2.getStatus());
        assertEquals("Task 2a canceled",TaskStatus.FAILED,task2a.getStatus());
        assertEquals("Task 1 success",TaskStatus.SUCCESS,task1.getStatus());
        assertEquals("Task 1a success",TaskStatus.SUCCESS,task1a.getStatus());
       
    }
View Full Code Here

    public void testGrowPool() throws Exception {
        manager.setMaximumThreadCount(1);
        //Allow some time to bring the thread count back down
        stopWatch.block(500);
       
        BaseTask task1 = new TimerTask(500L);
        BaseTask task2 = new TimerTask(500L);
       
        List<Task> taskList = new ArrayList<Task>();
        taskList.add(task1);
        taskList.add(task2);
       
        manager.submit(taskList);
        stopWatch.block(100);
        assertEquals("TaskManger active size = 1",1,manager.getActiveCount());
        // Block long enough for first task to complete and second task to begin
        stopWatch.block(600);
        stopWatch.block(100);
        assertEquals("TaskManger active size = 1",1,manager.getActiveCount());
        assertEquals("Task 1 SUCCESS with 1 thread",TaskStatus.SUCCESS,task1.getStatus());
        assertEquals("Task 2 WORKING with 1 thread",TaskStatus.WORKING,task2.getStatus());
        assertEquals("TaskManger pool size = 1",1,manager.getMaximumPoolSize());
       
        //Wait until the second task completes
        stopWatch.block(400);
       
        //Set thread count to 2
        manager.setMaximumThreadCount(2);
       
        task1 = new TimerTask(500L);
        task2 = new TimerTask(500L);
        BaseTask task3 = new TimerTask(500L);
       
        taskList = new ArrayList<Task>();
        taskList.add(task1);
        taskList.add(task2);
        taskList.add(task3);
       
        manager.submit(taskList);
        stopWatch.block(100);
        assertEquals("TaskManger active size = 2",2,manager.getActiveCount());
        // Block long enough for first two tasks to complete and third task to begin
        stopWatch.block(800);
        assertEquals("TaskManger active size = 1",1,manager.getActiveCount());
        assertEquals("Task 1 SUCCESS with 2 threads",TaskStatus.SUCCESS,task1.getStatus());
        assertEquals("Task 2 SUCCESS with 2 threads",TaskStatus.SUCCESS,task2.getStatus());
        assertEquals("Task 3 WORKING with 2 threads",TaskStatus.WORKING,task3.getStatus());
        assertEquals("TaskManger pool size = 2",2,manager.getMaximumPoolSize());
    }   
View Full Code Here

    public void testGrowPool() throws Exception {
        TaskQueueManager.setMaximumThreadCount(QUEUE_NAME,1);
        //Allow some time to bring the thread count back down
        stopWatch.block(500);
       
        BaseTask task1 = new MeanwhileTest.TimerTask(500L);
        BaseTask task2 = new MeanwhileTest.TimerTask(500L);
       
        List<Task> taskList = new ArrayList<Task>();
        taskList.add(task1);
        taskList.add(task2);
       
        TaskQueueManager.submit(QUEUE_NAME,taskList);
        stopWatch.block(100);
        assertEquals("TaskManger active size = 1",1,TaskQueueManager.getActiveCount(QUEUE_NAME));
        // Block long enough for first task to complete and second task to begin
        stopWatch.block(600);
        stopWatch.block(100);
        assertEquals("TaskManger active size = 1",1,TaskQueueManager.getActiveCount(QUEUE_NAME));
        assertEquals("Task 1 SUCCESS with 1 thread",TaskStatus.SUCCESS,task1.getStatus());
        assertEquals("Task 2 WORKING with 1 thread",TaskStatus.WORKING,task2.getStatus());
        assertEquals("TaskManger pool size = 1",1,TaskQueueManager.getMaximumPoolSize(QUEUE_NAME));
       
        //Wait until the second task completes
        stopWatch.block(400);
       
        //Set thread count to 2
        TaskQueueManager.setMaximumThreadCount(QUEUE_NAME,2);
       
        task1 = new MeanwhileTest.TimerTask(500L);
        task2 = new MeanwhileTest.TimerTask(500L);
        BaseTask task3 = new MeanwhileTest.TimerTask(500L);
       
        taskList = new ArrayList<Task>();
        taskList.add(task1);
        taskList.add(task2);
        taskList.add(task3);
       
        TaskQueueManager.submit(QUEUE_NAME,taskList);
        stopWatch.block(100);
        assertEquals("TaskManger active size = 2",2,TaskQueueManager.getActiveCount(QUEUE_NAME));
        // Block long enough for first two tasks to complete and third task to begin
        stopWatch.block(800);
        assertEquals("TaskManger active size = 1",1,TaskQueueManager.getActiveCount(QUEUE_NAME));
        assertEquals("Task 1 SUCCESS with 2 threads",TaskStatus.SUCCESS,task1.getStatus());
        assertEquals("Task 2 SUCCESS with 2 threads",TaskStatus.SUCCESS,task2.getStatus());
        assertEquals("Task 3 WORKING with 2 threads",TaskStatus.WORKING,task3.getStatus());
        assertEquals("TaskManger pool size = 2",2,TaskQueueManager.getMaximumPoolSize(QUEUE_NAME));
    }   
View Full Code Here

       
        MeanwhileTest.SuccessTask task1 = new MeanwhileTest.SuccessTask();
        MeanwhileTest.SuccessTask task2 = new MeanwhileTest.SuccessTask();
        MeanwhileTest.FailTask task3 = new MeanwhileTest.FailTask();
        MeanwhileTest.SuccessTask task4 = new MeanwhileTest.SuccessTask();
        BaseTask task5 = new BaseTask() {
            @Override
            public boolean execute() {
                return true;
            }
        };
       
        task1.chain(task2);
        task2.chain(task3);
        task3.chain(task4);
        task4.chain(task5);
       
        List<BaseTask> taskList = new ArrayList<BaseTask>();
        taskList.add(task1);
       
        List<BaseTask> returnTasks = manager.blockingSubmit(taskList);
       
        assertTrue("ReturnTasks is size 0",returnTasks.size()>0);
        assertTrue("ReturnTasks is not size 2",returnTasks.size()==1);
        assertEquals("Task 1 has failed",TaskStatus.SUCCESS,returnTasks.get(0).getStatus());
        assertEquals("Task 1 has failed",TaskStatus.SUCCESS,task1.getStatus());
        assertEquals("Task 2 has failed",TaskStatus.SUCCESS,task2.getStatus());
        assertEquals("Task 3 has not FAILED",TaskStatus.FAILED,task3.getStatus());
        assertEquals("Task 4 is not CANCELED",TaskStatus.CANCELED,task4.getStatus());
        assertEquals("Task 4 is not CANCELED",TaskStatus.CANCELED,task5.getStatus());
        /*
        assertFalse("Task 1 reported ALL SUCCESS",task1.allSuccess());
        assertFalse("Task 2 reported ALL SUCCESS",task2.allSuccess());
        assertFalse("Task 3 reported ALL SUCCESS",task3.allSuccess());
        assertFalse("Task 4 reported ALL SUCCESS",task4.allSuccess());
View Full Code Here

        MeanwhileTest.SuccessTask task1 = new MeanwhileTest.SuccessTask();
        MeanwhileTest.SuccessTask task2b = new MeanwhileTest.SuccessTask();
        MeanwhileTest.SuccessTask task2 = new MeanwhileTest.SuccessTask();
        MeanwhileTest.FailTask task3 = new MeanwhileTest.FailTask();
        MeanwhileTest.SuccessTask task4 = new MeanwhileTest.SuccessTask();
        BaseTask task5 = new BaseTask() {
            @Override
            public boolean execute() {
                return true;
            }
        };
       
        List<Task> taskChainList = new ArrayList<Task>();
        taskChainList.add(task2);
        taskChainList.add(task2b);
       
        task1.chain(taskChainList);
        task2.chain(task3);
        task3.chain(task4);
        task4.chain(task5);
       
        List<BaseTask> taskList = new ArrayList<BaseTask>();
        taskList.add(task1);
       
        List<BaseTask> returnTasks = manager.blockingSubmit(taskList);
       
        assertTrue("ReturnTasks is size 0",returnTasks.size()>0);
        assertTrue("ReturnTasks is not size 2",returnTasks.size()==1);
        assertEquals("Task 1 has failed",TaskStatus.SUCCESS,returnTasks.get(0).getStatus());
        assertEquals("Task 1 has failed",TaskStatus.SUCCESS,task1.getStatus());
        assertEquals("Task 2 has failed",TaskStatus.SUCCESS,task2.getStatus());
        assertEquals("Task 3 has not FAILED",TaskStatus.FAILED,task3.getStatus());
        assertEquals("Task 4 is not CANCELED",TaskStatus.CANCELED,task4.getStatus());
        assertEquals("Task 4 is not CANCELED",TaskStatus.CANCELED,task5.getStatus());
    }
View Full Code Here

       
        List<BaseTask> taskList = new ArrayList<BaseTask>();
        final List<String> payload = Collections.synchronizedList(new ArrayList<String>());
       
        for(int i = 0;i<100;i++) {
            taskList.add(new BaseTask() {
               
                public boolean execute() {
                    payload.add("" + System.currentTimeMillis());
                    return true;
                }
View Full Code Here

        assertFalse(check2.equals(check1));
    }
   
    @Test
    public void coverageHacks() throws Exception {
        MeanwhileRunner runner = new MeanwhileRunner(new BaseTask() {

            @Override
            public boolean execute() {
                throw new UnsupportedOperationException("Not supported yet.");
            }
View Full Code Here

         * @see ClaimCheck
   */
  private boolean blockHelper(final Object obj) throws Exception {
            startUp();
            boolean blocked = false;
            MeanwhileFuture future = stagePool.getFuture(obj);
            if(future!=null) {
                blocked = true;
                future.get();
            } else {
                future = pool.getFuture(obj);
                if(future!=null) {
                    blocked = true;
                    future.get();
                }
            }
            return blocked;
  }
View Full Code Here

TOP

Related Classes of com.level3.meanwhile.TaskQueueTest

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.