Search in sources :

Example 36 with AllAtOncePattern

use of com.axway.ats.agent.core.threading.patterns.AllAtOncePattern in project ats-framework by Axway.

the class Test_QueueCanceling method allAtOnce_SetMaxSpeed_BothThreadsPaused.

/**
     * Both threads will do 1 iteration and will be paused for 30 seconds due to the max speed.
     * At this moment we will cancel both threads.
     */
@Test
public void allAtOnce_SetMaxSpeed_BothThreadsPaused() throws Exception {
    expectedNumExecutions = 2;
    actionRequests.add(new ActionRequest(TEST_COMPONENT_NAME, ACTION_SLEEP, new Object[] { "500" }));
    AllAtOncePattern pattern = new AllAtOncePattern(2, false, 5, 500);
    pattern.setExecutionSpeed(30, 2);
    QueueExecutionStatistics.getInstance().initActionExecutionResults(QUEUE_NAME);
    actionHandler.scheduleActions(HOST, QUEUE_NAME, -1, actionRequests, pattern, new LoaderDataConfig(), false);
    actionHandler.startQueue(QUEUE_NAME);
    Thread.sleep(1500);
}
Also used : AllAtOncePattern(com.axway.ats.agent.core.threading.patterns.AllAtOncePattern) ActionRequest(com.axway.ats.agent.core.action.ActionRequest) LoaderDataConfig(com.axway.ats.agent.core.threading.data.config.LoaderDataConfig) Test(org.junit.Test)

Example 37 with AllAtOncePattern

use of com.axway.ats.agent.core.threading.patterns.AllAtOncePattern in project ats-framework by Axway.

the class Test_QueueCanceling method allAtOnce_OneThreadRunning_OneThreadPaused.

/**
     * We cancel 1 thread while running its 1st iteration and 2nd thread while waiting between its 1st and 2nd iterations
     */
@Test
public void allAtOnce_OneThreadRunning_OneThreadPaused() throws Exception {
    expectedNumExecutions = 2;
    ListDataConfig parameterData = new ListDataConfig("sleepTime", Arrays.asList(new String[] { "500", "2000" }), ParameterProviderLevel.PER_THREAD_STATIC);
    LoaderDataConfig loaderDataConfig = new LoaderDataConfig();
    loaderDataConfig.addParameterConfig(parameterData);
    actionRequests.add(new ActionRequest(TEST_COMPONENT_NAME, ACTION_SLEEP, new Object[] { "sleepTime" }));
    AllAtOncePattern pattern = new AllAtOncePattern(2, false, 2, 1000);
    QueueExecutionStatistics.getInstance().initActionExecutionResults(QUEUE_NAME);
    actionHandler.scheduleActions(HOST, QUEUE_NAME, -1, actionRequests, pattern, loaderDataConfig, false);
    actionHandler.startQueue(QUEUE_NAME);
    Thread.sleep(1000);
}
Also used : AllAtOncePattern(com.axway.ats.agent.core.threading.patterns.AllAtOncePattern) ActionRequest(com.axway.ats.agent.core.action.ActionRequest) ListDataConfig(com.axway.ats.agent.core.threading.data.config.ListDataConfig) LoaderDataConfig(com.axway.ats.agent.core.threading.data.config.LoaderDataConfig) Test(org.junit.Test)

Aggregations

AllAtOncePattern (com.axway.ats.agent.core.threading.patterns.AllAtOncePattern)37 Test (org.junit.Test)36 LoaderDataConfig (com.axway.ats.agent.core.threading.data.config.LoaderDataConfig)30 ActionRequest (com.axway.ats.agent.core.action.ActionRequest)24 ArrayList (java.util.ArrayList)17 BaseTest (com.axway.ats.agent.core.BaseTest)5 RangeDataConfig (com.axway.ats.agent.core.threading.data.config.RangeDataConfig)5 ListDataConfig (com.axway.ats.agent.core.threading.data.config.ListDataConfig)3 FixedDurationAllAtOncePattern (com.axway.ats.agent.core.threading.patterns.FixedDurationAllAtOncePattern)3 ParameterDataProvider (com.axway.ats.agent.core.threading.data.ParameterDataProvider)2 RampUpPattern (com.axway.ats.agent.core.threading.patterns.RampUpPattern)2 ThreadingPatternNotSupportedException (com.axway.ats.agent.core.threading.exceptions.ThreadingPatternNotSupportedException)1 QueueLoaderListener (com.axway.ats.agent.core.threading.listeners.QueueLoaderListener)1 FixedDurationRampUpPattern (com.axway.ats.agent.core.threading.patterns.FixedDurationRampUpPattern)1