@Test public void shouldReturnDisplayNameForApprovalType() { Approval approval = Approval.automaticApproval(); assertThat(approval.getDisplayName(), is("On Success")); approval = Approval.manualApproval(); assertThat(approval.getDisplayName(), is("Manual")); }
@Test public void shouldReturnTrueIfFirstStageIsManualApproved() { PipelineConfig pipelineConfig = PipelineConfigMother.createPipelineConfig("pipeline", "stage", "build"); pipelineConfig.getFirstStageConfig().updateApproval(Approval.manualApproval()); assertThat("First stage should be manual approved", pipelineConfig.isFirstStageManualApproval(), is(true)); }
@Test public void shouldAssignApprovalTypeOnFirstStageAsAuto() throws Exception { Map approvalAttributes = Collections.singletonMap(Approval.TYPE, Approval.SUCCESS); Map<String, Map> map = Collections.singletonMap(StageConfig.APPROVAL, approvalAttributes); PipelineConfig pipelineConfig = PipelineConfigMother.createPipelineConfig("p1", "s1", "j1"); pipelineConfig.get(0).updateApproval(Approval.manualApproval()); pipelineConfig.setConfigAttributes(map); assertThat(pipelineConfig.get(0).getApproval().getType(), is(Approval.SUCCESS)); }
@Test public void shouldAssignApprovalTypeOnFirstStageAsManual() throws Exception { Map approvalAttributes = Collections.singletonMap(Approval.TYPE, Approval.MANUAL); Map<String, Map> map = Collections.singletonMap(StageConfig.APPROVAL, approvalAttributes); PipelineConfig pipelineConfig = PipelineConfigMother.createPipelineConfig("p1", "s1", "j1"); pipelineConfig.get(0).updateApproval(Approval.manualApproval()); pipelineConfig.setConfigAttributes(map); assertThat(pipelineConfig.get(0).getApproval().getType(), is(Approval.MANUAL)); }
@Test public void shouldSetManualApprovalOnStageInstance() { StageConfig stageConfig = StageConfigMother.custom("test", Approval.manualApproval()); Stage instance = instanceFactory.createStageInstance(stageConfig, new DefaultSchedulingContext("anyone"), "md5", new TimeProvider()); assertThat(instance.getApprovalType(), is(GoConstants.APPROVAL_MANUAL)); }
public static PipelineConfig createManualTriggerPipelineConfig(MaterialConfig materialConfig, String pipelineName, String stageName, String... buildNames) { PipelineConfig pipelineConfig = createPipelineConfig(pipelineName, stageName, buildNames); pipelineConfig.materialConfigs().clear(); materialConfig.setName(new CaseInsensitiveString(String.format("%s-%s", pipelineName, materialConfig.getType()))); materialConfig.setAutoUpdate(false); pipelineConfig.materialConfigs().add(materialConfig); pipelineConfig.first().setApproval(Approval.manualApproval()); return pipelineConfig; }
public Approval toApproval(CRApproval crApproval) { if (crApproval == null) return Approval.automaticApproval(); Approval approval; if (crApproval.getType() == CRApprovalCondition.manual) approval = Approval.manualApproval(); else approval = Approval.automaticApproval(); AuthConfig authConfig = approval.getAuthConfig(); for (String user : crApproval.getAuthorizedUsers()) { authConfig.add(new AdminUser(new CaseInsensitiveString(user))); } for (String user : crApproval.getAuthorizedRoles()) { authConfig.add(new AdminRole(new CaseInsensitiveString(user))); } return approval; }