public void setup(final Stage stage) { view.setName(stage.getName()); setState(State.EXECUTING); }
PipelineExecutionTrace trace = item.getPipelineTrace(); Stage currentStage = currentStages.stream(). filter(step -> event.getStage().equals(step.getName())) .findFirst() .orElse(null); stagePresenter.setState(buildStageState(event.getStatus())); } else { Stage stage = new Stage(item.getPipelineTrace().getPipeline().getKey(), event.getStage()); PipelineStatus stageStatus = event.getStatus();
protected Pipeline mockPipeline(String pipelineId, int stages) { PipelineKey pipelineKey = new PipelineKey(pipelineId); Pipeline pipeline = new Pipeline(pipelineKey); for (int i = 0; i < stages; i++) { Stage stage = new Stage(pipelineKey, "Stage.name." + Integer.toString(i)); pipeline.addStage(stage); } return pipeline; }
protected Pipeline mockPipeline(String pipelineId, int stages) { PipelineKey pipelineKey = new PipelineKey(pipelineId); Pipeline pipeline = new Pipeline(pipelineKey); for (int i = 0; i < stages; i++) { Stage stage = new Stage(pipelineKey, "Stage.name." + Integer.toString(i)); pipeline.addStage(stage); } return pipeline; }
public void setup(final Stage stage) { view.setName(stage.getName()); setState(State.EXECUTING); }
PipelineExecutionTrace trace = item.getPipelineTrace(); Stage currentStage = currentStages.stream(). filter(step -> event.getStage().equals(step.getName())) .findFirst() .orElse(null); stagePresenter.setState(buildStageState(event.getStatus())); } else { Stage stage = new Stage(item.getPipelineTrace().getPipeline().getKey(), event.getStage()); PipelineStatus stageStatus = event.getStatus();
item.getPipelineStageItems().getItems() .forEach(stage -> { pipeline.addStage(new Stage(pipeline.getKey(), stage.getName())); pipelineTrace.setStageStatus(stage.getName(),
@Test public void testSetup() { when(stage.getName()).thenReturn(STAGE_NAME); presenter.setup(stage); verify(view, times(1)).setName(STAGE_NAME); verify(view, times(1)).setExecutingState(State.EXECUTING.name()); }
@Test public void testSetup() { when(stage.getName()).thenReturn(STAGE_NAME); presenter.setup(stage); verify(view, times(1)).setName(STAGE_NAME); verify(view, times(1)).setExecutingState(State.EXECUTING.name()); }
protected void preparePipelineExecutionTraceSetup() { Pipeline pipeline = mockPipeline(PIPELINE_NAME, STAGE_NUMBER); trace = mockPipelineExecutionTrace(EXECUTION_ID, pipeline, PipelineStatus.RUNNING, PipelineStatus.SCHEDULED); //set an arbitrary number of consecutive stages as finished and the last as running. displayableStages = new ArrayList<>(); int finishedStages = 5; for (int i = 0; i < finishedStages; i++) { trace.setStageStatus(pipeline.getStages().get(i).getName(), PipelineStatus.FINISHED); displayableStages.add(pipeline.getStages().get(i)); } trace.setStageStatus(pipeline.getStages().get(finishedStages).getName(), PipelineStatus.RUNNING); displayableStages.add(pipeline.getStages().get(finishedStages)); }
private void setupPipeline(final PipelineExecutionTrace trace) { clearPipeline(); boolean showStep = true; Pipeline pipeline = trace.getPipeline(); for (int i = 0; showStep && i < pipeline.getStages().size(); i++) { Stage stage = pipeline.getStages().get(i); PipelineStatus stageStatus = trace.getStageStatus(stage.getName()); showStep = showStage(stageStatus); if (showStep) { if (i > 0) { TransitionPresenter transitionPresenter = newTransitionPresenter(); currentTransitions.add(transitionPresenter); pipelinePresenter.addStage(transitionPresenter.getView()); } final StagePresenter stagePresenter = newStagePresenter(); stagePresenter.setup(stage); stagePresenter.setState(buildStageState(stageStatus)); pipelinePresenter.addStage(stagePresenter.getView()); currentStages.add(stage); stagePresenters.put(stage, stagePresenter); } } }
protected void preparePipelineExecutionTraceSetup() { Pipeline pipeline = mockPipeline(PIPELINE_NAME, STAGE_NUMBER); trace = mockPipelineExecutionTrace(EXECUTION_ID, pipeline, PipelineStatus.RUNNING, PipelineStatus.SCHEDULED); //set an arbitrary number of consecutive stages as finished and the last as running. displayableStages = new ArrayList<>(); int finishedStages = 5; for (int i = 0; i < finishedStages; i++) { trace.setStageStatus(pipeline.getStages().get(i).getName(), PipelineStatus.FINISHED); displayableStages.add(pipeline.getStages().get(i)); } trace.setStageStatus(pipeline.getStages().get(finishedStages).getName(), PipelineStatus.RUNNING); displayableStages.add(pipeline.getStages().get(finishedStages)); }
private void setupPipeline(final PipelineExecutionTrace trace) { clearPipeline(); boolean showStep = true; Pipeline pipeline = trace.getPipeline(); for (int i = 0; showStep && i < pipeline.getStages().size(); i++) { Stage stage = pipeline.getStages().get(i); PipelineStatus stageStatus = trace.getStageStatus(stage.getName()); showStep = showStage(stageStatus); if (showStep) { if (i > 0) { TransitionPresenter transitionPresenter = newTransitionPresenter(); currentTransitions.add(transitionPresenter); pipelinePresenter.addStage(transitionPresenter.getView()); } final StagePresenter stagePresenter = newStagePresenter(); stagePresenter.setup(stage); stagePresenter.setState(buildStageState(stageStatus)); pipelinePresenter.addStage(stagePresenter.getView()); currentStages.add(stage); stagePresenters.put(stage, stagePresenter); } } }
/** * an item with a pipeline execution trace was initially set and the last stage status has changed. */ @Test public void testOnStageStatusChangeLastVisibleStageChanged() { preparePipelineExecutionTraceSetup(); RuntimeListItem item = new RuntimeListItem(RUNTIME_NAME, trace); //setup the presenter. presenter.setup(item); int initialStagePresentersSize = stagePresenters.size(); //emulate the last stage finishing. Stage stage = displayableStages.get(displayableStages.size() - 1); presenter.onStageStatusChange(new StageStatusChangeEvent(trace.getKey(), stage.getName(), PipelineStatus.FINISHED)); //the last stage status was changed form EXECUTING to to DONE StagePresenter stagePresenter = stagePresenters.get(stagePresenters.size() - 1); verify(stagePresenter, times(1)).setState(State.EXECUTING); verify(stagePresenter, times(1)).setState(State.DONE); //no additional stages were added. verify(stagePresenterInstance, times(initialStagePresentersSize)).get(); }
/** * an item with a pipeline execution trace was initially set and the last stage status has changed. */ @Test public void testOnStageStatusChangeLastVisibleStageChanged() { preparePipelineExecutionTraceSetup(); RuntimeListItem item = new RuntimeListItem(RUNTIME_NAME, trace); //setup the presenter. presenter.setup(item); int initialStagePresentersSize = stagePresenters.size(); //emulate the last stage finishing. Stage stage = displayableStages.get(displayableStages.size() - 1); presenter.onStageStatusChange(new StageStatusChangeEvent(trace.getKey(), stage.getName(), PipelineStatus.FINISHED)); //the last stage status was changed form EXECUTING to to DONE StagePresenter stagePresenter = stagePresenters.get(stagePresenters.size() - 1); verify(stagePresenter, times(1)).setState(State.EXECUTING); verify(stagePresenter, times(1)).setState(State.DONE); //no additional stages were added. verify(stagePresenterInstance, times(initialStagePresentersSize)).get(); }
/** * an item with a pipeline execution trace was initially set and a new stage status not yet drawn has changed. */ @Test public void testOnStageStatusChangeNewStageChanged() { preparePipelineExecutionTraceSetup(); RuntimeListItem item = new RuntimeListItem(RUNTIME_NAME, trace); //setup the presenter. presenter.setup(item); int initialStagePresentersSize = stagePresenters.size(); //emulate the next stage consecutive stage finishing. Stage stage = item.getPipelineTrace().getPipeline().getStages().get(displayableStages.size()); presenter.onStageStatusChange(new StageStatusChangeEvent(trace.getKey(), stage.getName(), PipelineStatus.RUNNING)); //an additional stage was added. verify(stagePresenterInstance, times(initialStagePresentersSize + 1)).get(); //the newly stage is set to EXECUTING in the UI StagePresenter stagePresenter = stagePresenters.get(stagePresenters.size() - 1); verify(stagePresenter, times(1)).setup(stage); verify(stagePresenter, times(1)).setState(State.EXECUTING); }
/** * an item with a pipeline execution trace was initially set and a new stage status not yet drawn has changed. */ @Test public void testOnStageStatusChangeNewStageChanged() { preparePipelineExecutionTraceSetup(); RuntimeListItem item = new RuntimeListItem(RUNTIME_NAME, trace); //setup the presenter. presenter.setup(item); int initialStagePresentersSize = stagePresenters.size(); //emulate the next stage consecutive stage finishing. Stage stage = item.getPipelineTrace().getPipeline().getStages().get(displayableStages.size()); presenter.onStageStatusChange(new StageStatusChangeEvent(trace.getKey(), stage.getName(), PipelineStatus.RUNNING)); //an additional stage was added. verify(stagePresenterInstance, times(initialStagePresentersSize + 1)).get(); //the newly stage is set to EXECUTING in the UI StagePresenter stagePresenter = stagePresenters.get(stagePresenters.size() - 1); verify(stagePresenter, times(1)).setup(stage); verify(stagePresenter, times(1)).setState(State.EXECUTING); }
protected PipelineExecutionTrace mockPipelineExecutionTrace(String executionId, Pipeline pipeline, PipelineStatus initialPipelineStatus, PipelineStatus initialStagesStatus) { PipelineExecutionTrace trace = new PipelineExecutionTrace(new PipelineExecutionTraceKey(executionId)); trace.setPipeline(pipeline); trace.setPipelineStatus(initialPipelineStatus); pipeline.getStages().forEach(stage -> trace.setStageStatus(stage.getName(), initialStagesStatus)); return trace; } }
protected PipelineExecutionTrace mockPipelineExecutionTrace(String executionId, Pipeline pipeline, PipelineStatus initialPipelineStatus, PipelineStatus initialStagesStatus) { PipelineExecutionTrace trace = new PipelineExecutionTrace(new PipelineExecutionTraceKey(executionId)); trace.setPipeline(pipeline); trace.setPipelineStatus(initialPipelineStatus); pipeline.getStages().forEach(stage -> trace.setStageStatus(stage.getName(), initialStagesStatus)); return trace; } }
private void assertPipelineTrace(PipelineExecutionTrace trace) { assertEquals(PIPELINE_ID, trace.getPipeline().getKey().getId()); assertEquals(PIPELINE_EXECUTION_ID, trace.getKey().getId()); assertEquals(PipelineStatus.RUNNING, trace.getPipelineStatus()); assertEquals(stageItemList.getItems().size(), trace.getPipeline().getStages().size()); for (int i = 0; i < STAGE_ITEMS_COUNT; i++) { PipelineStageItem stageItem = stageItemList.getItems().get(i); Stage stage = trace.getPipeline().getStages().get(i); assertEquals(stageItem.getName(), stage.getName()); assertEquals(stageItem.getStatus(), trace.getStageStatus(stage.getName()).name()); assertEquals(stageItem.getErrorMessage(), trace.getStageError(stage.getName())); } }