use of com.sequenceiq.environment.api.v1.environment.model.request.EnvironmentRequest in project cloudbreak by hortonworks.
the class EnvironmentValidatorServiceTest method testValidateAwsEnvironmentRequestValid.
@Test
void testValidateAwsEnvironmentRequestValid() {
when(credentialService.getCloudPlatformByCredential(anyString(), anyString(), any())).thenReturn("AWS");
EnvironmentRequest request = new EnvironmentRequest();
request.setCredentialName("aws-credential");
AwsEnvironmentParameters aws = new AwsEnvironmentParameters();
S3GuardRequestParameters s3GuardRequestParameters = new S3GuardRequestParameters();
s3GuardRequestParameters.setDynamoDbTableName("table");
aws.setS3guard(s3GuardRequestParameters);
request.setAws(aws);
ValidationResult result = ThreadBasedUserCrnProvider.doAs(USER_CRN, () -> underTest.validateAwsEnvironmentRequest(request));
assertFalse(result.hasError());
}
use of com.sequenceiq.environment.api.v1.environment.model.request.EnvironmentRequest in project cloudbreak by hortonworks.
the class EnvironmentValidatorServiceTest method testValidateAwsEnvironmentNoS3GuardParams.
@Test
void testValidateAwsEnvironmentNoS3GuardParams() {
when(credentialService.getCloudPlatformByCredential(anyString(), anyString(), any())).thenReturn("AWS");
EnvironmentRequest request = new EnvironmentRequest();
request.setCredentialName("aws-credential");
request.setAws(new AwsEnvironmentParameters());
ValidationResult result = ThreadBasedUserCrnProvider.doAs(USER_CRN, () -> underTest.validateAwsEnvironmentRequest(request));
assertTrue(result.hasError());
assertEquals("S3Guard Dynamo DB table name is not found in environment request.", result.getErrors().get(0));
}
use of com.sequenceiq.environment.api.v1.environment.model.request.EnvironmentRequest in project cloudbreak by hortonworks.
the class EnvironmentControllerTest method testEndpointGatewayOptionsPreserved.
@Test
void testEndpointGatewayOptionsPreserved() {
EnvironmentNetworkRequest networkRequest = setupNetworkRequestWithEndpointGatway();
EnvironmentRequest environmentRequest = new EnvironmentRequest();
environmentRequest.setNetwork(networkRequest);
setupServiceResponses();
ThreadBasedUserCrnProvider.doAs(USER_CRN, () -> underTest.post(environmentRequest));
assertEquals(PublicEndpointAccessGateway.ENABLED, networkRequest.getPublicEndpointAccessGateway());
assertEquals(SUBNETS, networkRequest.getEndpointGatewaySubnetIds());
}
use of com.sequenceiq.environment.api.v1.environment.model.request.EnvironmentRequest in project cloudbreak by hortonworks.
the class EnvironmentApiConverterTest method testInitCreationDto.
@ParameterizedTest
@EnumSource(value = CloudPlatform.class, names = { "AWS", "AZURE", "GCP" })
void testInitCreationDto(CloudPlatform cloudPlatform) {
EnvironmentRequest request = createEnvironmentRequest(cloudPlatform);
FreeIpaCreationDto freeIpaCreationDto = mock(FreeIpaCreationDto.class);
EnvironmentTelemetry environmentTelemetry = mock(EnvironmentTelemetry.class);
AccountTelemetry accountTelemetry = mock(AccountTelemetry.class);
Features features = mock(Features.class);
NetworkDto networkDto = mock(NetworkDto.class);
when(credentialService.getCloudPlatformByCredential(anyString(), anyString(), any())).thenReturn(cloudPlatform.name());
when(freeIpaConverter.convert(request.getFreeIpa(), "test-aws", cloudPlatform.name())).thenReturn(freeIpaCreationDto);
when(accountTelemetry.getFeatures()).thenReturn(features);
when(accountTelemetryService.getOrDefault(any())).thenReturn(accountTelemetry);
when(telemetryApiConverter.convert(eq(request.getTelemetry()), any(), anyString())).thenReturn(environmentTelemetry);
when(tunnelConverter.convert(request.getTunnel())).thenReturn(request.getTunnel());
when(networkRequestToDtoConverter.convert(request.getNetwork())).thenReturn(networkDto);
EnvironmentCreationDto actual = testInitCreationDto(request);
assertEquals("test-aws", actual.getAccountId());
assertEquals(USER_CRN, actual.getCreator());
assertEquals(request.getName(), actual.getName());
assertEquals(request.getDescription(), actual.getDescription());
assertEquals(request.getCredentialName(), actual.getCredential().getCredentialName());
assertEquals(request, actual.getCredential());
assertEquals(freeIpaCreationDto, actual.getFreeIpaCreation());
assertLocation(request.getLocation(), actual.getLocation());
assertEquals(environmentTelemetry, actual.getTelemetry());
assertEquals(1, actual.getRegions().size());
assertAuthentication(request.getAuthentication(), actual.getAuthentication());
assertEquals(request.getAdminGroupName(), actual.getAdminGroupName());
assertEquals(request.getTags(), actual.getTags());
assertExperimentalFeatures(request, actual.getExperimentalFeatures());
assertParameters(request, actual.getParameters(), cloudPlatform);
assertEquals(request.getProxyConfigName(), actual.getProxyConfigName());
assertEquals(networkDto, actual.getNetwork());
assertSecurityAccess(request.getSecurityAccess(), actual.getSecurityAccess());
verify(credentialService).getCloudPlatformByCredential(anyString(), anyString(), any());
verify(freeIpaConverter).convert(request.getFreeIpa(), "test-aws", cloudPlatform.name());
verify(accountTelemetry).getFeatures();
verify(accountTelemetryService).getOrDefault(any());
verify(telemetryApiConverter).convert(eq(request.getTelemetry()), any(), anyString());
verify(tunnelConverter).convert(request.getTunnel());
verify(networkRequestToDtoConverter).convert(request.getNetwork());
}
use of com.sequenceiq.environment.api.v1.environment.model.request.EnvironmentRequest in project cloudbreak by hortonworks.
the class EnvironmentApiConverterTest method testGcpResourceEncryptionParametersAndGcpRequest.
@Test
void testGcpResourceEncryptionParametersAndGcpRequest() {
EnvironmentRequest request = createEnvironmentRequest(GCP);
request.setGcp(GcpEnvironmentParameters.builder().withResourceEncryptionParameters(GcpResourceEncryptionParameters.builder().withEncryptionKey("dummy-encryption-key").build()).build());
FreeIpaCreationDto freeIpaCreationDto = mock(FreeIpaCreationDto.class);
EnvironmentTelemetry environmentTelemetry = mock(EnvironmentTelemetry.class);
EnvironmentBackup environmentBackup = mock(EnvironmentBackup.class);
AccountTelemetry accountTelemetry = mock(AccountTelemetry.class);
Features features = mock(Features.class);
NetworkDto networkDto = mock(NetworkDto.class);
when(credentialService.getCloudPlatformByCredential(anyString(), anyString(), any())).thenReturn(GCP.name());
when(freeIpaConverter.convert(request.getFreeIpa(), "id", CloudConstants.AWS)).thenReturn(freeIpaCreationDto);
when(accountTelemetry.getFeatures()).thenReturn(features);
when(accountTelemetryService.getOrDefault(any())).thenReturn(accountTelemetry);
when(telemetryApiConverter.convert(eq(request.getTelemetry()), any(), anyString())).thenReturn(environmentTelemetry);
when(backupConverter.convert(eq(request.getBackup()))).thenReturn(environmentBackup);
when(tunnelConverter.convert(request.getTunnel())).thenReturn(request.getTunnel());
when(networkRequestToDtoConverter.convert(request.getNetwork())).thenReturn(networkDto);
EnvironmentCreationDto actual = testInitCreationDto(request);
assertEquals("dummy-encryption-key", actual.getParameters().getGcpParametersDto().getGcpResourceEncryptionParametersDto().getEncryptionKey());
}
Aggregations