use of com.sequenceiq.cloudbreak.api.endpoint.v4.stacks.response.image.StackImageV4Response in project cloudbreak by hortonworks.
the class SdxRecoveryTests method validateImageId.
private SdxTestDto validateImageId(AtomicReference<String> originalImageId, SdxTestDto dto) {
StackImageV4Response image = dto.getResponse().getStackV4Response().getImage();
Log.log(LOGGER, format(" Image Catalog Name: %s ", image.getCatalogName()));
Log.log(LOGGER, format(" Image Catalog URL: %s ", image.getCatalogUrl()));
Log.log(LOGGER, format(" Image ID: %s ", image.getId()));
if (!image.getId().equals(originalImageId.get())) {
throw new TestFailException(" The selected image ID is: " + image.getId() + " instead of: " + originalImageId.get());
}
return dto;
}
use of com.sequenceiq.cloudbreak.api.endpoint.v4.stacks.response.image.StackImageV4Response in project cloudbreak by hortonworks.
the class ImageCatalogChangeTest method testFreeipaImageCatalogChange.
@Test(dataProvider = TEST_CONTEXT_WITH_MOCK)
@Description(given = "a running Freeipa/Datalake/Datahub", when = "calling change image catalog", then = "it should have new image catalog")
public void testFreeipaImageCatalogChange(MockedTestContext testContext) {
// Freeipa
final String newImageCatalog = testContext.given(FreeIpaTestDto.class).getResponse().getImage().getCatalog() + "&changed=true";
testContext.given(FreeipaChangeImageCatalogTestDto.class).withImageCatalog(newImageCatalog).when(freeIpaTestClient.changeImageCatalog()).given(FreeIpaTestDto.class).when(freeIpaTestClient.describe()).then((testContext1, testDto, client) -> {
final String actualCatalog = testDto.getResponse().getImage().getCatalog();
if (!newImageCatalog.equals(actualCatalog)) {
throw new TestFailException(String.format("Image catalog of Freeipa was not changed. Catalog : %s", actualCatalog));
}
return testDto;
});
// Datalake
testContext.given(SdxInternalTestDto.class).when(sdxTestClient.createInternal()).await(SdxClusterStatusResponse.RUNNING);
final StackImageV4Response sdxImage = testContext.given(SdxInternalTestDto.class).getResponse().getStackV4Response().getImage();
final String sdxNewImageCatalogName = createNewImageCatalog(testContext, sdxImage);
testContext.given(SdxChangeImageCatalogTestDto.class).withImageCatalog(sdxNewImageCatalogName).when(sdxTestClient.changeImageCatalog()).given(SdxInternalTestDto.class).when(sdxTestClient.describeInternal()).then((testContext1, testDto, client) -> {
final String actualCatalog = testDto.getResponse().getStackV4Response().getImage().getCatalogName();
if (!sdxNewImageCatalogName.equals(actualCatalog)) {
throw new TestFailException(String.format("Image catalog of Datalake was not changed. Catalog : %s", actualCatalog));
}
return testDto;
});
// Datahub
testContext.given(DistroXTestDto.class).when(distroXClient.create()).await(STACK_AVAILABLE);
final StackImageV4Response distroXImage = testContext.given(DistroXTestDto.class).getResponse().getImage();
final String distroXNewImageCatalogName = createNewImageCatalog(testContext, distroXImage);
testContext.given(DistroXChangeImageCatalogTestDto.class).withImageCatalog(distroXNewImageCatalogName).when(distroXClient.changeImageCatalog()).given(DistroXTestDto.class).when(distroXClient.get()).then((testContext1, testDto, client) -> {
final String actualCatalog = testDto.getResponse().getImage().getCatalogName();
if (!distroXNewImageCatalogName.equals(actualCatalog)) {
throw new TestFailException(String.format("Image catalog of Datahub was not changed. Catalog : %s", actualCatalog));
}
return testDto;
}).validate();
}
use of com.sequenceiq.cloudbreak.api.endpoint.v4.stacks.response.image.StackImageV4Response in project cloudbreak by hortonworks.
the class StackToStackV4ResponseConverterTest method testConvert.
@Test
public void testConvert() throws CloudbreakImageNotFoundException {
Stack source = getSource();
// GIVEN
given(imageService.getImage(source.getId())).willReturn(mock(Image.class));
given(imageToStackImageV4ResponseConverter.convert(any(Image.class))).willReturn(new StackImageV4Response());
given(stackAuthenticationToStackAuthenticationV4ResponseConverter.convert(any(StackAuthentication.class))).willReturn(new StackAuthenticationV4Response());
given(stackToCustomDomainsSettingsV4Response.convert(any())).willReturn(new CustomDomainSettingsV4Response());
given(clusterToClusterV4ResponseConverter.convert(any())).willReturn(new ClusterV4Response());
given(networkToNetworkV4ResponseConverter.convert(any())).willReturn(new NetworkV4Response());
given(workspaceToWorkspaceResourceV4ResponseConverter.convert(any())).willReturn(new WorkspaceResourceV4Response());
given(cloudbreakDetailsToCloudbreakDetailsV4ResponseConverter.convert(any())).willReturn(new CloudbreakDetailsV4Response());
given(stackToPlacementSettingsV4ResponseConverter.convert(any())).willReturn(new PlacementSettingsV4Response());
given(telemetryConverter.convert(any())).willReturn(new TelemetryResponse());
given(instanceGroupToInstanceGroupV4ResponseConverter.convert(any())).willReturn(new InstanceGroupV4Response());
given(databaseAvailabilityTypeToDatabaseResponseConverter.convert(any(), any())).willReturn(new DatabaseResponse());
// WHEN
StackV4Response result = underTest.convert(source);
// THEN
assertAllFieldsNotNull(result, Arrays.asList("gcp", "mock", "openstack", "aws", "yarn", "azure", "environmentName", "credentialName", "credentialCrn", "telemetry", "flowIdentifier", "loadBalancers"));
verify(restRequestThreadLocalService).setWorkspace(source.getWorkspace());
}
use of com.sequenceiq.cloudbreak.api.endpoint.v4.stacks.response.image.StackImageV4Response in project cloudbreak by hortonworks.
the class StackToStackV4ResponseConverterTest method testConvertWithoutCluster.
@Test
public void testConvertWithoutCluster() throws CloudbreakImageNotFoundException {
Stack source = getSource();
// GIVEN
getSource().setCluster(null);
given(imageService.getImage(source.getId())).willReturn(mock(Image.class));
given(imageToStackImageV4ResponseConverter.convert(any())).willReturn(new StackImageV4Response());
given(stackToCustomDomainsSettingsV4Response.convert(any())).willReturn(new CustomDomainSettingsV4Response());
given(stackAuthenticationToStackAuthenticationV4ResponseConverter.convert(any())).willReturn(new StackAuthenticationV4Response());
given(networkToNetworkV4ResponseConverter.convert(any())).willReturn(new NetworkV4Response());
given(workspaceToWorkspaceResourceV4ResponseConverter.convert(any())).willReturn(new WorkspaceResourceV4Response());
given(cloudbreakDetailsToCloudbreakDetailsV4ResponseConverter.convert(any())).willReturn(new CloudbreakDetailsV4Response());
given(stackToPlacementSettingsV4ResponseConverter.convert(any())).willReturn(new PlacementSettingsV4Response());
given(telemetryConverter.convert(any())).willReturn(new TelemetryResponse());
given(instanceGroupToInstanceGroupV4ResponseConverter.convert(any())).willReturn(new InstanceGroupV4Response());
given(databaseAvailabilityTypeToDatabaseResponseConverter.convert(any(), any())).willReturn(new DatabaseResponse());
// WHEN
StackV4Response result = underTest.convert(source);
// THEN
assertAllFieldsNotNull(result, Arrays.asList("cluster", "gcp", "mock", "openstack", "aws", "yarn", "azure", "telemetry", "environmentName", "credentialName", "credentialCrn", "telemetry", "flowIdentifier", "loadBalancers"));
assertNull(result.getCluster());
verify(restRequestThreadLocalService).setWorkspace(source.getWorkspace());
}
use of com.sequenceiq.cloudbreak.api.endpoint.v4.stacks.response.image.StackImageV4Response in project cloudbreak by hortonworks.
the class StackToStackV4ResponseConverterTest method testConvertWithLoadBalancers.
@Test
public void testConvertWithLoadBalancers() throws CloudbreakImageNotFoundException {
Set<LoadBalancer> loadBalancers = Set.of(new LoadBalancer());
Stack source = getSource();
// GIVEN
given(imageService.getImage(source.getId())).willReturn(mock(Image.class));
given(imageToStackImageV4ResponseConverter.convert(any())).willReturn(new StackImageV4Response());
given(stackToCustomDomainsSettingsV4Response.convert(any())).willReturn(new CustomDomainSettingsV4Response());
given(stackAuthenticationToStackAuthenticationV4ResponseConverter.convert(any())).willReturn(new StackAuthenticationV4Response());
given(networkToNetworkV4ResponseConverter.convert(any())).willReturn(new NetworkV4Response());
given(workspaceToWorkspaceResourceV4ResponseConverter.convert(any())).willReturn(new WorkspaceResourceV4Response());
given(cloudbreakDetailsToCloudbreakDetailsV4ResponseConverter.convert(any())).willReturn(new CloudbreakDetailsV4Response());
given(stackToPlacementSettingsV4ResponseConverter.convert(any())).willReturn(new PlacementSettingsV4Response());
given(telemetryConverter.convert(any())).willReturn(new TelemetryResponse());
given(instanceGroupToInstanceGroupV4ResponseConverter.convert(any())).willReturn(new InstanceGroupV4Response());
given(databaseAvailabilityTypeToDatabaseResponseConverter.convert(any(), any())).willReturn(new DatabaseResponse());
given(loadBalancerService.findByStackId(any())).willReturn(loadBalancers);
// WHEN
source.setLoadBalancers(loadBalancers);
StackV4Response result = underTest.convert(source);
// THEN
assertNotNull(result.getLoadBalancers());
assertTrue(result.isEnableLoadBalancer());
verify(restRequestThreadLocalService).setWorkspace(source.getWorkspace());
}
Aggregations