package org.radargun.stages.lifecycle; import java.util.ArrayList; import java.util.Arrays; import java.util.List; import org.radargun.DistStageAck; import org.radargun.StageResult; import org.radargun.traits.Lifecycle; import org.radargun.util.CoreStageRunner; import org.testng.Assert; import org.testng.annotations.Test; /** * @author Matej Cimbora */ @Test(timeOut = 30000) public class ParallelStartStopStageTest { public void smokeTest() throws Exception { CoreStageRunner stageRunner = new CoreStageRunner(1); ParallelStartStopStage parallelStartStopStage = new ParallelStartStopStage(); parallelStartStopStage.start = Arrays.asList(0); Lifecycle lifecycle = stageRunner.getTraitImpl(Lifecycle.class); Assert.assertFalse(lifecycle.isRunning()); List<DistStageAck> acks = new ArrayList<>(1); acks.add(stageRunner.executeOnSlave(parallelStartStopStage, 0)); Assert.assertTrue(lifecycle.isRunning()); Assert.assertEquals(stageRunner.processAckOnMaster(parallelStartStopStage, acks), StageResult.SUCCESS); } public void smokeTestStop() throws Exception { CoreStageRunner stageRunner = new CoreStageRunner(1); ParallelStartStopStage parallelStartStopStage = new ParallelStartStopStage(); parallelStartStopStage.stop = Arrays.asList(0); Lifecycle lifecycle = stageRunner.getTraitImpl(Lifecycle.class); lifecycle.start(); Assert.assertTrue(lifecycle.isRunning()); List<DistStageAck> acks = new ArrayList<>(1); acks.add(stageRunner.executeOnSlave(parallelStartStopStage, 0)); Assert.assertFalse(lifecycle.isRunning()); Assert.assertEquals(stageRunner.processAckOnMaster(parallelStartStopStage, acks), StageResult.SUCCESS); } }