use of org.jboss.pnc.dto.Build in project pnc by project-ncl.
the class WebSocketsNotificationTest method shouldReceiveBuildStatusChangeNotification.
@Test
@InSequence(2)
public void shouldReceiveBuildStatusChangeNotification() throws Exception {
// given
Build build = BuildMock.newBuild(BuildStatus.SUCCESS, "Build1");
BuildStatusChangedEvent buildStatusChangedEvent = new DefaultBuildStatusChangedEvent(build, BuildStatus.NEW, build.getStatus());
String buildString = mapperProvider.getMapper().writeValueAsString(build);
String expectedJsonResponse = "{\"oldStatus\":\"NEW\",\"build\":" + buildString + ",\"job\":\"BUILD\",\"notificationType\":\"BUILD_STATUS_CHANGED\",\"progress\":\"FINISHED\",\"oldProgress\":\"PENDING\",\"message\":null}";
// when
buildStatusNotificationEvent.fire(buildStatusChangedEvent);
// then
Wait.forCondition(() -> isReceived(expectedJsonResponse), 15, ChronoUnit.SECONDS);
}
use of org.jboss.pnc.dto.Build in project pnc by project-ncl.
the class BuildEndpointTest method shouldBeAbleToReachAllBuildsWhenPaging.
@Test
public void shouldBeAbleToReachAllBuildsWhenPaging() throws Exception {
BuildClient bc = new BuildClient(RestClientConfiguration.asAnonymous());
List<String> buildIds = bc.getAll(null, null).getAll().stream().map(Build::getId).collect(Collectors.toList());
List<String> pagedBuildIds = new ArrayList<>();
int pageSize = 1;
for (int pageIndex = 0; pageIndex < buildIds.size(); pageIndex++) {
final io.restassured.response.Response response = given().redirects().follow(false).port(8080).when().get(String.format(BASE_REST_PATH + "/builds/?pageIndex=%d&pageSize=%d", pageIndex, pageSize));
List<Build> builds = response.getBody().jsonPath().getList("content", Build.class);
pagedBuildIds.add(builds.get(0).getId());
}
assertThat(pagedBuildIds).containsExactlyInAnyOrderElementsOf(buildIds);
}
use of org.jboss.pnc.dto.Build in project pnc by project-ncl.
the class BuildEndpointTest method shouldFilterByBuildConfigurationName.
@Test
public void shouldFilterByBuildConfigurationName() throws Exception {
BuildClient client = new BuildClient(RestClientConfiguration.asAnonymous());
String buildConfigName = DatabaseDataInitializer.PNC_PROJECT_BUILD_CFG_ID;
BuildsFilterParameters filter = new BuildsFilterParameters();
filter.setBuildConfigName(buildConfigName);
List<String> buildConfigNames = client.getAll(filter, null).getAll().stream().map(Build::getBuildConfigRevision).map(BuildConfigurationRevisionRef::getName).collect(Collectors.toList());
// from DatabaseDataInitializer
assertThat(buildConfigNames).hasSize(2);
assertThat(buildConfigNames).containsOnly(buildConfigName);
}
use of org.jboss.pnc.dto.Build in project pnc by project-ncl.
the class BuildEndpointTest method shouldFilterByBuildConfigurationNameAndUserId.
@Test
public void shouldFilterByBuildConfigurationNameAndUserId() throws Exception {
BuildClient client = new BuildClient(RestClientConfiguration.asAnonymous());
String buildConfigName = DatabaseDataInitializer.PNC_PROJECT_BUILD_CFG_ID;
String username = "pnc-admin";
String rsql = "user.username==" + username;
BuildsFilterParameters filter = new BuildsFilterParameters();
filter.setBuildConfigName(buildConfigName);
List<Build> builds = new ArrayList<>(client.getAll(filter, null, Optional.empty(), Optional.of(rsql)).getAll());
assertThat(builds).hasSize(2);
assertThat(builds.stream().map(Build::getBuildConfigRevision).map(BuildConfigurationRevisionRef::getName).allMatch(name -> name.equals(buildConfigName)));
assertThat(builds.stream().map(Build::getUser).map(User::getUsername).allMatch(name -> name.equals(username)));
}
use of org.jboss.pnc.dto.Build in project pnc by project-ncl.
the class BuildEndpointTest method shouldFilterByUserId.
@Test
public void shouldFilterByUserId() throws Exception {
BuildClient bc = new BuildClient(RestClientConfiguration.asAnonymous());
Build build = bc.getAll(null, null).getAll().iterator().next();
String userId = build.getUser().getId();
String rsql = "user.id==" + userId;
List<String> userIds = bc.getAll(null, null, Optional.empty(), Optional.of(rsql)).getAll().stream().map(Build::getUser).map(User::getId).collect(Collectors.toList());
// from DatabaseDataInitializer
assertThat(userIds).hasSize(2);
assertThat(userIds).containsOnly(userId);
}
Aggregations