use of com.thoughtworks.go.server.service.result.HttpLocalizedOperationResult in project gocd by gocd.
the class MaterialUpdateServiceTest method shouldReturnImplementerOfSvnPostCommitHookAndPerformMaterialUpdate_WhenInvokingPostCommitHookMaterialUpdate.
@Test
public void shouldReturnImplementerOfSvnPostCommitHookAndPerformMaterialUpdate_WhenInvokingPostCommitHookMaterialUpdate() {
final HashMap params = new HashMap();
params.put(MaterialUpdateService.TYPE, "svn");
when(goConfigService.isUserAdmin(username)).thenReturn(true);
final CruiseConfig cruiseConfig = new BasicCruiseConfig(PipelineConfigMother.createGroup("groupName", "pipeline1", "pipeline2"));
when(goConfigService.currentCruiseConfig()).thenReturn(cruiseConfig);
when(postCommitHookMaterialType.toType("svn")).thenReturn(validMaterialType);
final PostCommitHookImplementer svnPostCommitHookImplementer = mock(PostCommitHookImplementer.class);
final Material svnMaterial = mock(Material.class);
when(svnPostCommitHookImplementer.prune(anySet(), eq(params))).thenReturn(new HashSet(Arrays.asList(svnMaterial)));
when(validMaterialType.getImplementer()).thenReturn(svnPostCommitHookImplementer);
service.notifyMaterialsForUpdate(username, params, result);
verify(svnPostCommitHookImplementer).prune(anySet(), eq(params));
Mockito.verify(queue, times(1)).post(matchMaterialUpdateMessage(svnMaterial));
HttpLocalizedOperationResult acceptedResult = new HttpLocalizedOperationResult();
acceptedResult.accepted(LocalizedMessage.string("MATERIAL_SCHEDULE_NOTIFICATION_ACCEPTED"));
assertThat(result, is(acceptedResult));
}
use of com.thoughtworks.go.server.service.result.HttpLocalizedOperationResult in project gocd by gocd.
the class MaterialUpdateServiceTest method shouldReturn404WhenThereAreNoMaterialsToSchedule_WhenInvokingPostCommitHookMaterialUpdate.
@Test
public void shouldReturn404WhenThereAreNoMaterialsToSchedule_WhenInvokingPostCommitHookMaterialUpdate() {
when(goConfigService.isUserAdmin(username)).thenReturn(true);
PostCommitHookMaterialType materialType = mock(PostCommitHookMaterialType.class);
when(postCommitHookMaterialType.toType("type")).thenReturn(materialType);
PostCommitHookImplementer hookImplementer = mock(PostCommitHookImplementer.class);
when(materialType.getImplementer()).thenReturn(hookImplementer);
when(materialType.isKnown()).thenReturn(true);
CruiseConfig config = mock(BasicCruiseConfig.class);
when(goConfigService.currentCruiseConfig()).thenReturn(config);
when(config.getGroups()).thenReturn(new PipelineGroups());
when(hookImplementer.prune(anySet(), anyMap())).thenReturn(new HashSet<Material>());
final HashMap params = new HashMap();
params.put(MaterialUpdateService.TYPE, "type");
service.notifyMaterialsForUpdate(username, params, result);
HttpLocalizedOperationResult operationResult = new HttpLocalizedOperationResult();
operationResult.notFound(LocalizedMessage.string("MATERIAL_SUITABLE_FOR_NOTIFICATION_NOT_FOUND"), HealthStateType.general(HealthStateScope.GLOBAL));
assertThat(result, is(operationResult));
verify(hookImplementer).prune(anySet(), anyMap());
}
use of com.thoughtworks.go.server.service.result.HttpLocalizedOperationResult in project gocd by gocd.
the class MaterialUpdateServiceTest method shouldReturn400WhenTypeIsMissing_WhenInvokingPostCommitHookMaterialUpdate.
@Test
public void shouldReturn400WhenTypeIsMissing_WhenInvokingPostCommitHookMaterialUpdate() {
when(goConfigService.isUserAdmin(username)).thenReturn(true);
service.notifyMaterialsForUpdate(username, new HashMap(), result);
HttpLocalizedOperationResult badRequestResult = new HttpLocalizedOperationResult();
badRequestResult.badRequest(LocalizedMessage.string("API_BAD_REQUEST"));
assertThat(result, is(badRequestResult));
verify(goConfigService).isUserAdmin(username);
}
use of com.thoughtworks.go.server.service.result.HttpLocalizedOperationResult in project gocd by gocd.
the class MaterialUpdateServiceTest method shouldReturn400WhenTypeIsInvalid_WhenInvokingPostCommitHookMaterialUpdate.
@Test
public void shouldReturn400WhenTypeIsInvalid_WhenInvokingPostCommitHookMaterialUpdate() {
when(goConfigService.isUserAdmin(username)).thenReturn(true);
when(postCommitHookMaterialType.toType("some_invalid_type")).thenReturn(invalidMaterialType);
final HashMap params = new HashMap();
params.put(MaterialUpdateService.TYPE, "some_invalid_type");
service.notifyMaterialsForUpdate(username, params, result);
HttpLocalizedOperationResult badRequestResult = new HttpLocalizedOperationResult();
badRequestResult.badRequest(LocalizedMessage.string("API_BAD_REQUEST"));
assertThat(result, is(badRequestResult));
verify(goConfigService).isUserAdmin(username);
}
use of com.thoughtworks.go.server.service.result.HttpLocalizedOperationResult in project gocd by gocd.
the class GoConfigServiceTest method shouldFindConfigChangesForGivenConfigMd5.
@Test
public void shouldFindConfigChangesForGivenConfigMd5() throws Exception {
goConfigService.configChangesFor("md5-5", "md5-4", new HttpLocalizedOperationResult());
verify(configRepo).configChangesFor("md5-5", "md5-4");
}
Aggregations