blob: 82fd834fed8dc0d8cbf8829da18b60f2cd4cdee9 [file] [log] [blame]
/*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*/
package com.epam.dlab.backendapi.util;
import com.epam.dlab.auth.UserInfo;
import com.epam.dlab.backendapi.SelfServiceApplicationConfiguration;
import com.epam.dlab.backendapi.dao.SettingsDAO;
import com.epam.dlab.backendapi.resources.dto.BackupFormDTO;
import com.epam.dlab.backendapi.resources.dto.ComputationalCreateFormDTO;
import com.epam.dlab.backendapi.resources.dto.SparkStandaloneClusterCreateForm;
import com.epam.dlab.backendapi.resources.dto.aws.AwsComputationalCreateForm;
import com.epam.dlab.backendapi.resources.dto.gcp.GcpComputationalCreateForm;
import com.epam.dlab.cloud.CloudProvider;
import com.epam.dlab.dto.UserInstanceDTO;
import com.epam.dlab.dto.aws.AwsCloudSettings;
import com.epam.dlab.dto.backup.EnvBackupDTO;
import com.epam.dlab.dto.base.DataEngineType;
import com.epam.dlab.dto.computational.UserComputationalResource;
import com.epam.dlab.dto.exploratory.ExploratoryGitCredsDTO;
import com.epam.dlab.dto.exploratory.LibInstallDTO;
import com.epam.dlab.dto.gcp.GcpCloudSettings;
import com.epam.dlab.dto.reuploadkey.ReuploadKeyDTO;
import com.epam.dlab.exceptions.DlabException;
import com.epam.dlab.model.ResourceData;
import com.epam.dlab.model.ResourceType;
import com.epam.dlab.model.exploratory.Exploratory;
import org.junit.Before;
import org.junit.Rule;
import org.junit.Test;
import org.junit.rules.ExpectedException;
import org.junit.runner.RunWith;
import org.mockito.InjectMocks;
import org.mockito.Mock;
import org.mockito.runners.MockitoJUnitRunner;
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
import static org.junit.Assert.assertEquals;
import static org.mockito.Mockito.*;
@RunWith(MockitoJUnitRunner.class)
public class RequestBuilderTest {
private final String USER = "test";
private ReuploadKeyDTO expectedReuploadKeyDTO;
private UserInfo userInfo;
private Exploratory exploratory;
private ExploratoryGitCredsDTO egcDto;
private UserInstanceDTO uiDto;
private UserComputationalResource computationalResource;
@Mock
private SelfServiceApplicationConfiguration configuration;
@Mock
private SettingsDAO settingsDAO;
@InjectMocks
private RequestBuilder requestBuilder;
@Rule
public ExpectedException expectedException = ExpectedException.none();
@Before
public void setUp() {
userInfo = getUserInfo();
expectedReuploadKeyDTO = getReuploadFile();
exploratory = Exploratory.builder().name("explName").build();
egcDto = new ExploratoryGitCredsDTO();
uiDto = new UserInstanceDTO();
computationalResource = new UserComputationalResource();
}
@Test
public void newEdgeKeyUploadForAWS() {
when(configuration.getCloudProvider()).thenReturn(CloudProvider.AWS);
when(settingsDAO.getServiceBaseName()).thenReturn("someSBN");
when(settingsDAO.getConfOsFamily()).thenReturn("someConfOsFamily");
when(settingsDAO.getAwsRegion()).thenReturn("someAwsRegion");
when(settingsDAO.getAwsSecurityGroups()).thenReturn("someAwsSecurityGroups");
when(settingsDAO.getAwsSubnetId()).thenReturn("someAwsSubnetId");
when(settingsDAO.getAwsVpcId()).thenReturn("someAwsVpcId");
when(settingsDAO.getConfTagResourceId()).thenReturn("someConfTagResourceId");
requestBuilder.newEdgeKeyUpload(userInfo, "someContent");
verify(configuration, times(3)).getCloudProvider();
verify(settingsDAO).getServiceBaseName();
verify(settingsDAO).getConfOsFamily();
verify(settingsDAO).getAwsRegion();
verify(settingsDAO).getAwsSecurityGroups();
verify(settingsDAO).getAwsSubnetId();
verify(settingsDAO).getAwsVpcId();
verify(settingsDAO).getConfTagResourceId();
verify(settingsDAO).getAwsNotebookSubnetId();
verify(settingsDAO).getAwsNotebookVpcId();
verifyNoMoreInteractions(configuration, settingsDAO);
}
@Test
public void newEdgeKeyUploadForAzure() {
when(configuration.getCloudProvider()).thenReturn(CloudProvider.AZURE);
when(settingsDAO.isAzureDataLakeEnabled()).thenReturn(true);
when(settingsDAO.getServiceBaseName()).thenReturn("someSBN");
when(settingsDAO.getConfOsFamily()).thenReturn("someConfOsFamily");
when(settingsDAO.getAzureRegion()).thenReturn("someAzureRegion");
when(settingsDAO.getAzureResourceGroupName()).thenReturn("someAzureResourceGroup");
when(settingsDAO.getAzureSecurityGroupName()).thenReturn("someAzureResourceGroupName");
when(settingsDAO.getAzureSubnetName()).thenReturn("someAzureSubnetId");
when(settingsDAO.getAzureVpcName()).thenReturn("someAzureVpcId");
requestBuilder.newEdgeKeyUpload(userInfo, "someContent");
verify(configuration, times(3)).getCloudProvider();
verify(settingsDAO).isAzureDataLakeEnabled();
verify(settingsDAO).getServiceBaseName();
verify(settingsDAO).getConfOsFamily();
verify(settingsDAO).getAzureRegion();
verify(settingsDAO).getAzureResourceGroupName();
verify(settingsDAO).getAzureSecurityGroupName();
verify(settingsDAO).getAzureSubnetName();
verify(settingsDAO).getAzureVpcName();
verifyNoMoreInteractions(configuration, settingsDAO);
}
@Test
public void newEdgeKeyUploadForGCP() {
when(configuration.getCloudProvider()).thenReturn(CloudProvider.GCP);
when(configuration.getMaxUserNameLength()).thenReturn(10);
when(settingsDAO.getServiceBaseName()).thenReturn("someSBN");
when(settingsDAO.getConfOsFamily()).thenReturn("someConfOsFamily");
requestBuilder.newEdgeKeyUpload(userInfo, "someContent");
verify(configuration, times(3)).getCloudProvider();
verify(configuration).getMaxUserNameLength();
verify(settingsDAO).getServiceBaseName();
verify(settingsDAO).getConfOsFamily();
verifyNoMoreInteractions(configuration, settingsDAO);
}
@Test
public void newEdgeKeyUploadWithException() {
when(configuration.getCloudProvider()).thenReturn(CloudProvider.AWS);
doThrow(new RuntimeException()).when(settingsDAO).getAwsRegion();
expectedException.expect(DlabException.class);
expectedException.expectMessage("Cannot create instance of resource class ");
requestBuilder.newEdgeKeyUpload(userInfo, "someContent");
}
@Test
public void newKeyReuploadForAwsOrAzure() {
when(configuration.getCloudProvider()).thenReturn(CloudProvider.AWS);
ReuploadKeyDTO actualReuploadFile = requestBuilder.newKeyReupload(userInfo, "someId", "someContent",
Collections.singletonList(
new ResourceData(ResourceType.EXPLORATORY, "someId", "someName", null)));
AwsCloudSettings cloudSettings = new AwsCloudSettings();
cloudSettings.setAwsIamUser(USER);
expectedReuploadKeyDTO.withCloudSettings(cloudSettings);
expectedReuploadKeyDTO.withId("someId");
expectedReuploadKeyDTO.withResources(Collections.singletonList(
new ResourceData(ResourceType.EXPLORATORY, "someId", "someName", null)));
assertEquals(expectedReuploadKeyDTO.getId(), actualReuploadFile.getId());
assertEquals(expectedReuploadKeyDTO.getContent(), actualReuploadFile.getContent());
assertEquals(expectedReuploadKeyDTO.getResources(), actualReuploadFile.getResources());
assertEquals(expectedReuploadKeyDTO.getCloudSettings(), actualReuploadFile.getCloudSettings());
assertEquals(expectedReuploadKeyDTO.getConfKeyDir(), actualReuploadFile.getConfKeyDir());
assertEquals(expectedReuploadKeyDTO.getConfOsFamily(), actualReuploadFile.getConfOsFamily());
assertEquals(expectedReuploadKeyDTO.getEdgeUserName(), actualReuploadFile.getEdgeUserName());
assertEquals(expectedReuploadKeyDTO.getServiceBaseName(), actualReuploadFile.getServiceBaseName());
verify(configuration, times(2)).getCloudProvider();
verifyNoMoreInteractions(configuration);
}
@Test
public void newKeyReuploadForGcp() {
when(configuration.getCloudProvider()).thenReturn(CloudProvider.GCP);
when(configuration.getMaxUserNameLength()).thenReturn(10);
ReuploadKeyDTO actualReuploadFile = requestBuilder.newKeyReupload(userInfo, "someId", "someContent",
Collections.singletonList(
new ResourceData(ResourceType.EXPLORATORY, "someId", "someName", null)));
GcpCloudSettings cloudSettings = new GcpCloudSettings();
cloudSettings.setGcpIamUser(USER);
expectedReuploadKeyDTO.withCloudSettings(cloudSettings);
expectedReuploadKeyDTO.withId("someId");
expectedReuploadKeyDTO.withResources(Collections.singletonList(
new ResourceData(ResourceType.EXPLORATORY, "someId", "someName", null)));
assertEquals(expectedReuploadKeyDTO.getId(), actualReuploadFile.getId());
assertEquals(expectedReuploadKeyDTO.getContent(), actualReuploadFile.getContent());
assertEquals(expectedReuploadKeyDTO.getResources(), actualReuploadFile.getResources());
assertEquals(expectedReuploadKeyDTO.getCloudSettings(), actualReuploadFile.getCloudSettings());
assertEquals(expectedReuploadKeyDTO.getConfKeyDir(), actualReuploadFile.getConfKeyDir());
assertEquals(expectedReuploadKeyDTO.getConfOsFamily(), actualReuploadFile.getConfOsFamily());
assertEquals(expectedReuploadKeyDTO.getEdgeUserName(), actualReuploadFile.getEdgeUserName());
assertEquals(expectedReuploadKeyDTO.getServiceBaseName(), actualReuploadFile.getServiceBaseName());
verify(configuration, times(2)).getCloudProvider();
verify(configuration).getMaxUserNameLength();
verifyNoMoreInteractions(configuration);
}
@Test
public void newEdgeAction() {
when(configuration.getCloudProvider()).thenReturn(CloudProvider.AWS);
when(settingsDAO.getServiceBaseName()).thenReturn("someSBN");
when(settingsDAO.getConfOsFamily()).thenReturn("someConfOsFamily");
when(settingsDAO.getAwsRegion()).thenReturn("someAwsRegion");
when(settingsDAO.getAwsSecurityGroups()).thenReturn("someAwsSecurityGroups");
when(settingsDAO.getAwsSubnetId()).thenReturn("someAwsSubnetId");
when(settingsDAO.getAwsVpcId()).thenReturn("someAwsVpcId");
when(settingsDAO.getConfTagResourceId()).thenReturn("someConfTagResourceId");
requestBuilder.newEdgeAction(userInfo);
verify(configuration, times(3)).getCloudProvider();
verify(settingsDAO).getServiceBaseName();
verify(settingsDAO).getConfOsFamily();
verify(settingsDAO).getAwsRegion();
verify(settingsDAO).getAwsSecurityGroups();
verify(settingsDAO).getAwsSubnetId();
verify(settingsDAO).getAwsVpcId();
verify(settingsDAO).getConfTagResourceId();
verify(settingsDAO).getAwsNotebookSubnetId();
verify(settingsDAO).getAwsNotebookVpcId();
verifyNoMoreInteractions(configuration, settingsDAO);
}
@Test
public void newEdgeActionWithException() {
when(configuration.getCloudProvider()).thenReturn(CloudProvider.AWS);
doThrow(new RuntimeException()).when(settingsDAO).getAwsRegion();
expectedException.expect(DlabException.class);
expectedException.expectMessage("Cannot create instance of resource class ");
requestBuilder.newEdgeAction(userInfo);
}
@Test
public void newUserEnvironmentStatus() {
when(configuration.getCloudProvider()).thenReturn(CloudProvider.AWS);
when(settingsDAO.getServiceBaseName()).thenReturn("someSBN");
when(settingsDAO.getConfOsFamily()).thenReturn("someConfOsFamily");
when(settingsDAO.getAwsRegion()).thenReturn("someAwsRegion");
when(settingsDAO.getAwsSecurityGroups()).thenReturn("someAwsSecurityGroups");
when(settingsDAO.getAwsSubnetId()).thenReturn("someAwsSubnetId");
when(settingsDAO.getAwsVpcId()).thenReturn("someAwsVpcId");
when(settingsDAO.getConfTagResourceId()).thenReturn("someConfTagResourceId");
requestBuilder.newUserEnvironmentStatus(userInfo);
verify(configuration, times(3)).getCloudProvider();
verify(settingsDAO).getServiceBaseName();
verify(settingsDAO).getConfOsFamily();
verify(settingsDAO).getAwsRegion();
verify(settingsDAO).getAwsSecurityGroups();
verify(settingsDAO).getAwsSubnetId();
verify(settingsDAO).getAwsVpcId();
verify(settingsDAO).getConfTagResourceId();
verify(settingsDAO).getAwsNotebookSubnetId();
verify(settingsDAO).getAwsNotebookVpcId();
verifyNoMoreInteractions(configuration, settingsDAO);
}
@Test
public void newUserEnvironmentStatusWithException() {
when(configuration.getCloudProvider()).thenReturn(CloudProvider.AWS);
doThrow(new RuntimeException()).when(settingsDAO).getAwsRegion();
expectedException.expect(DlabException.class);
expectedException.expectMessage("Cannot create instance of resource class ");
requestBuilder.newUserEnvironmentStatus(userInfo);
}
@Test
public void newExploratoryCreateForAws() {
when(configuration.getCloudProvider()).thenReturn(CloudProvider.AWS);
when(settingsDAO.getServiceBaseName()).thenReturn("someSBN");
when(settingsDAO.getConfOsFamily()).thenReturn("someConfOsFamily");
when(settingsDAO.getAwsRegion()).thenReturn("someAwsRegion");
when(settingsDAO.getAwsSecurityGroups()).thenReturn("someAwsSecurityGroups");
when(settingsDAO.getAwsSubnetId()).thenReturn("someAwsSubnetId");
when(settingsDAO.getAwsVpcId()).thenReturn("someAwsVpcId");
when(settingsDAO.getConfTagResourceId()).thenReturn("someConfTagResourceId");
requestBuilder.newExploratoryCreate(exploratory, userInfo, egcDto, null);
verify(configuration, times(3)).getCloudProvider();
verify(settingsDAO).getServiceBaseName();
verify(settingsDAO).getConfOsFamily();
verify(settingsDAO).getAwsRegion();
verify(settingsDAO).getAwsSecurityGroups();
verify(settingsDAO).getAwsSubnetId();
verify(settingsDAO).getAwsVpcId();
verify(settingsDAO).getConfTagResourceId();
verify(settingsDAO).getAwsNotebookSubnetId();
verify(settingsDAO).getAwsNotebookVpcId();
verifyNoMoreInteractions(configuration, settingsDAO);
}
@Test
public void newExploratoryCreateForAzure() {
when(configuration.getCloudProvider()).thenReturn(CloudProvider.AZURE);
when(settingsDAO.isAzureDataLakeEnabled()).thenReturn(true);
when(settingsDAO.getServiceBaseName()).thenReturn("someSBN");
when(settingsDAO.getConfOsFamily()).thenReturn("someConfOsFamily");
when(settingsDAO.getAzureRegion()).thenReturn("someAzureRegion");
when(settingsDAO.getAzureResourceGroupName()).thenReturn("someAzureResourceGroup");
when(settingsDAO.getAzureSecurityGroupName()).thenReturn("someAzureResourceGroupName");
when(settingsDAO.getAzureSubnetName()).thenReturn("someAzureSubnetId");
when(settingsDAO.getAzureVpcName()).thenReturn("someAzureVpcId");
when(settingsDAO.getAzureDataLakeClientId()).thenReturn("someId");
requestBuilder.newExploratoryCreate(exploratory, userInfo, egcDto, null);
verify(configuration, times(3)).getCloudProvider();
verify(settingsDAO, times(2)).isAzureDataLakeEnabled();
verify(settingsDAO).getServiceBaseName();
verify(settingsDAO).getConfOsFamily();
verify(settingsDAO).getAzureRegion();
verify(settingsDAO).getAzureResourceGroupName();
verify(settingsDAO).getAzureSecurityGroupName();
verify(settingsDAO).getAzureSubnetName();
verify(settingsDAO).getAzureVpcName();
verifyNoMoreInteractions(configuration, settingsDAO);
}
@Test
public void newExploratoryCreateForGcp() {
when(configuration.getCloudProvider()).thenReturn(CloudProvider.GCP);
when(configuration.getMaxUserNameLength()).thenReturn(10);
when(settingsDAO.getServiceBaseName()).thenReturn("someSBN");
when(settingsDAO.getConfOsFamily()).thenReturn("someConfOsFamily");
requestBuilder.newExploratoryCreate(exploratory, userInfo, egcDto, null);
verify(configuration, times(3)).getCloudProvider();
verify(configuration).getMaxUserNameLength();
verify(settingsDAO).getServiceBaseName();
verify(settingsDAO).getConfOsFamily();
verifyNoMoreInteractions(configuration, settingsDAO);
}
@Test
public void newExploratoryStartForAws() {
when(configuration.getCloudProvider()).thenReturn(CloudProvider.AWS);
when(settingsDAO.getServiceBaseName()).thenReturn("someSBN");
when(settingsDAO.getConfOsFamily()).thenReturn("someConfOsFamily");
when(settingsDAO.getAwsRegion()).thenReturn("someAwsRegion");
when(settingsDAO.getAwsSecurityGroups()).thenReturn("someAwsSecurityGroups");
when(settingsDAO.getAwsSubnetId()).thenReturn("someAwsSubnetId");
when(settingsDAO.getAwsVpcId()).thenReturn("someAwsVpcId");
when(settingsDAO.getConfTagResourceId()).thenReturn("someConfTagResourceId");
requestBuilder.newExploratoryStart(userInfo, uiDto, egcDto);
verify(configuration, times(3)).getCloudProvider();
verify(settingsDAO).getServiceBaseName();
verify(settingsDAO).getConfOsFamily();
verify(settingsDAO).getAwsRegion();
verify(settingsDAO).getAwsSecurityGroups();
verify(settingsDAO).getAwsSubnetId();
verify(settingsDAO).getAwsVpcId();
verify(settingsDAO).getConfTagResourceId();
verify(settingsDAO).getAwsNotebookSubnetId();
verify(settingsDAO).getAwsNotebookVpcId();
verifyNoMoreInteractions(configuration, settingsDAO);
}
@Test
public void newExploratoryStartForAzure() {
when(configuration.getCloudProvider()).thenReturn(CloudProvider.AZURE);
when(settingsDAO.isAzureDataLakeEnabled()).thenReturn(true);
when(settingsDAO.getServiceBaseName()).thenReturn("someSBN");
when(settingsDAO.getConfOsFamily()).thenReturn("someConfOsFamily");
when(settingsDAO.getAzureRegion()).thenReturn("someAzureRegion");
when(settingsDAO.getAzureResourceGroupName()).thenReturn("someAzureResourceGroup");
when(settingsDAO.getAzureSecurityGroupName()).thenReturn("someAzureResourceGroupName");
when(settingsDAO.getAzureSubnetName()).thenReturn("someAzureSubnetId");
when(settingsDAO.getAzureVpcName()).thenReturn("someAzureVpcId");
when(settingsDAO.getAzureDataLakeClientId()).thenReturn("someId");
requestBuilder.newExploratoryStart(userInfo, uiDto, egcDto);
verify(configuration, times(3)).getCloudProvider();
verify(settingsDAO, times(2)).isAzureDataLakeEnabled();
verify(settingsDAO).getServiceBaseName();
verify(settingsDAO).getConfOsFamily();
verify(settingsDAO).getAzureRegion();
verify(settingsDAO).getAzureResourceGroupName();
verify(settingsDAO).getAzureSecurityGroupName();
verify(settingsDAO).getAzureSubnetName();
verify(settingsDAO).getAzureVpcName();
verifyNoMoreInteractions(configuration, settingsDAO);
}
@Test
public void newExploratoryStartForGcp() {
when(configuration.getCloudProvider()).thenReturn(CloudProvider.GCP);
when(configuration.getMaxUserNameLength()).thenReturn(10);
when(settingsDAO.getServiceBaseName()).thenReturn("someSBN");
when(settingsDAO.getConfOsFamily()).thenReturn("someConfOsFamily");
requestBuilder.newExploratoryStart(userInfo, uiDto, egcDto);
verify(configuration, times(3)).getCloudProvider();
verify(configuration).getMaxUserNameLength();
verify(settingsDAO).getServiceBaseName();
verify(settingsDAO).getConfOsFamily();
verifyNoMoreInteractions(configuration, settingsDAO);
}
@Test
public void newExploratoryStopForAws() {
when(configuration.getCloudProvider()).thenReturn(CloudProvider.AWS);
when(settingsDAO.getServiceBaseName()).thenReturn("someSBN");
when(settingsDAO.getConfOsFamily()).thenReturn("someConfOsFamily");
when(settingsDAO.getAwsRegion()).thenReturn("someAwsRegion");
when(settingsDAO.getAwsSecurityGroups()).thenReturn("someAwsSecurityGroups");
when(settingsDAO.getAwsSubnetId()).thenReturn("someAwsSubnetId");
when(settingsDAO.getAwsVpcId()).thenReturn("someAwsVpcId");
when(settingsDAO.getConfTagResourceId()).thenReturn("someConfTagResourceId");
requestBuilder.newExploratoryStop(userInfo, uiDto);
verify(configuration, times(3)).getCloudProvider();
verify(settingsDAO).getServiceBaseName();
verify(settingsDAO).getConfOsFamily();
verify(settingsDAO).getAwsRegion();
verify(settingsDAO).getAwsSecurityGroups();
verify(settingsDAO).getAwsSubnetId();
verify(settingsDAO).getAwsVpcId();
verify(settingsDAO).getConfTagResourceId();
verify(settingsDAO).getAwsNotebookSubnetId();
verify(settingsDAO).getAwsNotebookVpcId();
verifyNoMoreInteractions(configuration, settingsDAO);
}
@Test
public void newExploratoryStopForAzure() {
when(configuration.getCloudProvider()).thenReturn(CloudProvider.AZURE);
when(settingsDAO.getServiceBaseName()).thenReturn("someSBN");
when(settingsDAO.getConfOsFamily()).thenReturn("someConfOsFamily");
when(settingsDAO.getAzureRegion()).thenReturn("someAzureRegion");
when(settingsDAO.getAzureResourceGroupName()).thenReturn("someAzureResourceGroup");
when(settingsDAO.getAzureSecurityGroupName()).thenReturn("someAzureResourceGroupName");
when(settingsDAO.getAzureSubnetName()).thenReturn("someAzureSubnetId");
when(settingsDAO.getAzureVpcName()).thenReturn("someAzureVpcId");
requestBuilder.newExploratoryStop(userInfo, uiDto);
verify(configuration, times(3)).getCloudProvider();
verify(settingsDAO).getServiceBaseName();
verify(settingsDAO).getConfOsFamily();
verify(settingsDAO).getAzureRegion();
verify(settingsDAO).getAzureResourceGroupName();
verify(settingsDAO).getAzureSecurityGroupName();
verify(settingsDAO).getAzureSubnetName();
verify(settingsDAO).getAzureVpcName();
verifyNoMoreInteractions(configuration, settingsDAO);
}
@Test
public void newExploratoryStopForGcp() {
when(configuration.getCloudProvider()).thenReturn(CloudProvider.GCP);
when(configuration.getMaxUserNameLength()).thenReturn(10);
when(settingsDAO.getServiceBaseName()).thenReturn("someSBN");
when(settingsDAO.getConfOsFamily()).thenReturn("someConfOsFamily");
requestBuilder.newExploratoryStop(userInfo, uiDto);
verify(configuration, times(3)).getCloudProvider();
verify(configuration).getMaxUserNameLength();
verify(settingsDAO).getServiceBaseName();
verify(settingsDAO).getConfOsFamily();
verifyNoMoreInteractions(configuration, settingsDAO);
}
@Test
public void newGitCredentialsUpdateForAws() {
when(configuration.getCloudProvider()).thenReturn(CloudProvider.AWS);
when(settingsDAO.getServiceBaseName()).thenReturn("someSBN");
when(settingsDAO.getConfOsFamily()).thenReturn("someConfOsFamily");
when(settingsDAO.getAwsRegion()).thenReturn("someAwsRegion");
when(settingsDAO.getAwsSecurityGroups()).thenReturn("someAwsSecurityGroups");
when(settingsDAO.getAwsSubnetId()).thenReturn("someAwsSubnetId");
when(settingsDAO.getAwsVpcId()).thenReturn("someAwsVpcId");
when(settingsDAO.getConfTagResourceId()).thenReturn("someConfTagResourceId");
requestBuilder.newGitCredentialsUpdate(userInfo, uiDto, egcDto);
verify(configuration, times(3)).getCloudProvider();
verify(settingsDAO).getServiceBaseName();
verify(settingsDAO).getConfOsFamily();
verify(settingsDAO).getAwsRegion();
verify(settingsDAO).getAwsSecurityGroups();
verify(settingsDAO).getAwsSubnetId();
verify(settingsDAO).getAwsVpcId();
verify(settingsDAO).getConfTagResourceId();
verify(settingsDAO).getAwsNotebookSubnetId();
verify(settingsDAO).getAwsNotebookVpcId();
verifyNoMoreInteractions(configuration, settingsDAO);
}
@Test
public void newGitCredentialsUpdateForAzure() {
when(configuration.getCloudProvider()).thenReturn(CloudProvider.AZURE);
when(settingsDAO.getServiceBaseName()).thenReturn("someSBN");
when(settingsDAO.getConfOsFamily()).thenReturn("someConfOsFamily");
when(settingsDAO.getAzureRegion()).thenReturn("someAzureRegion");
when(settingsDAO.getAzureResourceGroupName()).thenReturn("someAzureResourceGroup");
when(settingsDAO.getAzureSecurityGroupName()).thenReturn("someAzureResourceGroupName");
when(settingsDAO.getAzureSubnetName()).thenReturn("someAzureSubnetId");
when(settingsDAO.getAzureVpcName()).thenReturn("someAzureVpcId");
requestBuilder.newGitCredentialsUpdate(userInfo, uiDto, egcDto);
verify(configuration, times(3)).getCloudProvider();
verify(settingsDAO).getServiceBaseName();
verify(settingsDAO).getConfOsFamily();
verify(settingsDAO).getAzureRegion();
verify(settingsDAO).getAzureResourceGroupName();
verify(settingsDAO).getAzureSecurityGroupName();
verify(settingsDAO).getAzureSubnetName();
verify(settingsDAO).getAzureVpcName();
verifyNoMoreInteractions(configuration, settingsDAO);
}
@Test
public void newGitCredentialsUpdateForGcp() {
when(configuration.getCloudProvider()).thenReturn(CloudProvider.GCP);
when(configuration.getMaxUserNameLength()).thenReturn(10);
when(settingsDAO.getServiceBaseName()).thenReturn("someSBN");
when(settingsDAO.getConfOsFamily()).thenReturn("someConfOsFamily");
requestBuilder.newGitCredentialsUpdate(userInfo, uiDto, egcDto);
verify(configuration, times(3)).getCloudProvider();
verify(configuration).getMaxUserNameLength();
verify(settingsDAO).getServiceBaseName();
verify(settingsDAO).getConfOsFamily();
verifyNoMoreInteractions(configuration, settingsDAO);
}
@Test
public void newLibInstallForAws() {
when(configuration.getCloudProvider()).thenReturn(CloudProvider.AWS);
when(settingsDAO.getServiceBaseName()).thenReturn("someSBN");
when(settingsDAO.getConfOsFamily()).thenReturn("someConfOsFamily");
when(settingsDAO.getAwsRegion()).thenReturn("someAwsRegion");
when(settingsDAO.getAwsSecurityGroups()).thenReturn("someAwsSecurityGroups");
when(settingsDAO.getAwsSubnetId()).thenReturn("someAwsSubnetId");
when(settingsDAO.getAwsVpcId()).thenReturn("someAwsVpcId");
when(settingsDAO.getConfTagResourceId()).thenReturn("someConfTagResourceId");
requestBuilder.newLibInstall(userInfo, uiDto, new ArrayList<LibInstallDTO>());
verify(configuration, times(3)).getCloudProvider();
verify(settingsDAO).getServiceBaseName();
verify(settingsDAO).getConfOsFamily();
verify(settingsDAO).getAwsRegion();
verify(settingsDAO).getAwsSecurityGroups();
verify(settingsDAO).getAwsSubnetId();
verify(settingsDAO).getAwsVpcId();
verify(settingsDAO).getConfTagResourceId();
verify(settingsDAO).getAwsNotebookSubnetId();
verify(settingsDAO).getAwsNotebookVpcId();
verifyNoMoreInteractions(configuration, settingsDAO);
}
@Test
public void newLibInstallForAzure() {
when(configuration.getCloudProvider()).thenReturn(CloudProvider.AZURE);
when(settingsDAO.getServiceBaseName()).thenReturn("someSBN");
when(settingsDAO.getConfOsFamily()).thenReturn("someConfOsFamily");
when(settingsDAO.getAzureRegion()).thenReturn("someAzureRegion");
when(settingsDAO.getAzureResourceGroupName()).thenReturn("someAzureResourceGroup");
when(settingsDAO.getAzureSecurityGroupName()).thenReturn("someAzureResourceGroupName");
when(settingsDAO.getAzureSubnetName()).thenReturn("someAzureSubnetId");
when(settingsDAO.getAzureVpcName()).thenReturn("someAzureVpcId");
requestBuilder.newLibInstall(userInfo, uiDto, new ArrayList<LibInstallDTO>());
verify(configuration, times(3)).getCloudProvider();
verify(settingsDAO).getServiceBaseName();
verify(settingsDAO).getConfOsFamily();
verify(settingsDAO).getAzureRegion();
verify(settingsDAO).getAzureResourceGroupName();
verify(settingsDAO).getAzureSecurityGroupName();
verify(settingsDAO).getAzureSubnetName();
verify(settingsDAO).getAzureVpcName();
verifyNoMoreInteractions(configuration, settingsDAO);
}
@Test
public void newLibInstallForGcp() {
when(configuration.getCloudProvider()).thenReturn(CloudProvider.GCP);
when(configuration.getMaxUserNameLength()).thenReturn(10);
when(settingsDAO.getServiceBaseName()).thenReturn("someSBN");
when(settingsDAO.getConfOsFamily()).thenReturn("someConfOsFamily");
requestBuilder.newLibInstall(userInfo, uiDto, new ArrayList<LibInstallDTO>());
verify(configuration, times(3)).getCloudProvider();
verify(configuration).getMaxUserNameLength();
verify(settingsDAO).getServiceBaseName();
verify(settingsDAO).getConfOsFamily();
verifyNoMoreInteractions(configuration, settingsDAO);
}
@Test
public void newLibExploratoryListForAws() {
when(configuration.getCloudProvider()).thenReturn(CloudProvider.AWS);
when(settingsDAO.getServiceBaseName()).thenReturn("someSBN");
when(settingsDAO.getConfOsFamily()).thenReturn("someConfOsFamily");
when(settingsDAO.getAwsRegion()).thenReturn("someAwsRegion");
when(settingsDAO.getAwsSecurityGroups()).thenReturn("someAwsSecurityGroups");
when(settingsDAO.getAwsSubnetId()).thenReturn("someAwsSubnetId");
when(settingsDAO.getAwsVpcId()).thenReturn("someAwsVpcId");
when(settingsDAO.getConfTagResourceId()).thenReturn("someConfTagResourceId");
requestBuilder.newLibExploratoryList(userInfo, uiDto);
verify(configuration, times(3)).getCloudProvider();
verify(settingsDAO).getServiceBaseName();
verify(settingsDAO).getConfOsFamily();
verify(settingsDAO).getAwsRegion();
verify(settingsDAO).getAwsSecurityGroups();
verify(settingsDAO).getAwsSubnetId();
verify(settingsDAO).getAwsVpcId();
verify(settingsDAO).getConfTagResourceId();
verify(settingsDAO).getAwsNotebookSubnetId();
verify(settingsDAO).getAwsNotebookVpcId();
verifyNoMoreInteractions(configuration, settingsDAO);
}
@Test
public void newLibExploratoryListForAzure() {
when(configuration.getCloudProvider()).thenReturn(CloudProvider.AZURE);
when(settingsDAO.getServiceBaseName()).thenReturn("someSBN");
when(settingsDAO.getConfOsFamily()).thenReturn("someConfOsFamily");
when(settingsDAO.getAzureRegion()).thenReturn("someAzureRegion");
when(settingsDAO.getAzureResourceGroupName()).thenReturn("someAzureResourceGroup");
when(settingsDAO.getAzureSecurityGroupName()).thenReturn("someAzureResourceGroupName");
when(settingsDAO.getAzureSubnetName()).thenReturn("someAzureSubnetId");
when(settingsDAO.getAzureVpcName()).thenReturn("someAzureVpcId");
requestBuilder.newLibExploratoryList(userInfo, uiDto);
verify(configuration, times(3)).getCloudProvider();
verify(settingsDAO).getServiceBaseName();
verify(settingsDAO).getConfOsFamily();
verify(settingsDAO).getAzureRegion();
verify(settingsDAO).getAzureResourceGroupName();
verify(settingsDAO).getAzureSecurityGroupName();
verify(settingsDAO).getAzureSubnetName();
verify(settingsDAO).getAzureVpcName();
verifyNoMoreInteractions(configuration, settingsDAO);
}
@Test
public void newLibExploratoryListForGcp() {
when(configuration.getCloudProvider()).thenReturn(CloudProvider.GCP);
when(configuration.getMaxUserNameLength()).thenReturn(10);
when(settingsDAO.getServiceBaseName()).thenReturn("someSBN");
when(settingsDAO.getConfOsFamily()).thenReturn("someConfOsFamily");
requestBuilder.newLibExploratoryList(userInfo, uiDto);
verify(configuration, times(3)).getCloudProvider();
verify(configuration).getMaxUserNameLength();
verify(settingsDAO).getServiceBaseName();
verify(settingsDAO).getConfOsFamily();
verifyNoMoreInteractions(configuration, settingsDAO);
}
@Test
public void newLibInstallWithComputationalResourceForAws() {
when(configuration.getCloudProvider()).thenReturn(CloudProvider.AWS);
when(settingsDAO.getServiceBaseName()).thenReturn("someSBN");
when(settingsDAO.getConfOsFamily()).thenReturn("someConfOsFamily");
when(settingsDAO.getAwsRegion()).thenReturn("someAwsRegion");
when(settingsDAO.getAwsSecurityGroups()).thenReturn("someAwsSecurityGroups");
when(settingsDAO.getAwsSubnetId()).thenReturn("someAwsSubnetId");
when(settingsDAO.getAwsVpcId()).thenReturn("someAwsVpcId");
when(settingsDAO.getConfTagResourceId()).thenReturn("someConfTagResourceId");
requestBuilder.newLibInstall(userInfo, uiDto, computationalResource, new ArrayList<LibInstallDTO>());
verify(configuration, times(3)).getCloudProvider();
verify(settingsDAO).getServiceBaseName();
verify(settingsDAO).getConfOsFamily();
verify(settingsDAO).getAwsRegion();
verify(settingsDAO).getAwsSecurityGroups();
verify(settingsDAO).getAwsSubnetId();
verify(settingsDAO).getAwsVpcId();
verify(settingsDAO).getConfTagResourceId();
verify(settingsDAO).getAwsNotebookSubnetId();
verify(settingsDAO).getAwsNotebookVpcId();
verifyNoMoreInteractions(configuration, settingsDAO);
}
@Test
public void newLibInstallWithComputationalResourceForAzure() {
when(configuration.getCloudProvider()).thenReturn(CloudProvider.AZURE);
when(settingsDAO.getServiceBaseName()).thenReturn("someSBN");
when(settingsDAO.getConfOsFamily()).thenReturn("someConfOsFamily");
when(settingsDAO.getAzureRegion()).thenReturn("someAzureRegion");
when(settingsDAO.getAzureResourceGroupName()).thenReturn("someAzureResourceGroup");
when(settingsDAO.getAzureSecurityGroupName()).thenReturn("someAzureResourceGroupName");
when(settingsDAO.getAzureSubnetName()).thenReturn("someAzureSubnetId");
when(settingsDAO.getAzureVpcName()).thenReturn("someAzureVpcId");
requestBuilder.newLibInstall(userInfo, uiDto, computationalResource, new ArrayList<LibInstallDTO>());
verify(configuration, times(3)).getCloudProvider();
verify(settingsDAO).getServiceBaseName();
verify(settingsDAO).getConfOsFamily();
verify(settingsDAO).getAzureRegion();
verify(settingsDAO).getAzureResourceGroupName();
verify(settingsDAO).getAzureSecurityGroupName();
verify(settingsDAO).getAzureSubnetName();
verify(settingsDAO).getAzureVpcName();
verifyNoMoreInteractions(configuration, settingsDAO);
}
@Test
public void newLibInstallWithComputationalResourceForGcp() {
when(configuration.getCloudProvider()).thenReturn(CloudProvider.GCP);
when(configuration.getMaxUserNameLength()).thenReturn(10);
when(settingsDAO.getServiceBaseName()).thenReturn("someSBN");
when(settingsDAO.getConfOsFamily()).thenReturn("someConfOsFamily");
requestBuilder.newLibInstall(userInfo, uiDto, computationalResource, new ArrayList<LibInstallDTO>());
verify(configuration, times(3)).getCloudProvider();
verify(configuration).getMaxUserNameLength();
verify(settingsDAO).getServiceBaseName();
verify(settingsDAO).getConfOsFamily();
verifyNoMoreInteractions(configuration, settingsDAO);
}
@Test
public void newLibComputationalListForAws() {
when(configuration.getCloudProvider()).thenReturn(CloudProvider.AWS);
when(settingsDAO.getServiceBaseName()).thenReturn("someSBN");
when(settingsDAO.getConfOsFamily()).thenReturn("someConfOsFamily");
when(settingsDAO.getAwsRegion()).thenReturn("someAwsRegion");
when(settingsDAO.getAwsSecurityGroups()).thenReturn("someAwsSecurityGroups");
when(settingsDAO.getAwsSubnetId()).thenReturn("someAwsSubnetId");
when(settingsDAO.getAwsVpcId()).thenReturn("someAwsVpcId");
when(settingsDAO.getConfTagResourceId()).thenReturn("someConfTagResourceId");
requestBuilder.newLibComputationalList(userInfo, uiDto, computationalResource);
verify(configuration, times(3)).getCloudProvider();
verify(settingsDAO).getServiceBaseName();
verify(settingsDAO).getConfOsFamily();
verify(settingsDAO).getAwsRegion();
verify(settingsDAO).getAwsSecurityGroups();
verify(settingsDAO).getAwsSubnetId();
verify(settingsDAO).getAwsVpcId();
verify(settingsDAO).getConfTagResourceId();
verify(settingsDAO).getAwsNotebookSubnetId();
verify(settingsDAO).getAwsNotebookVpcId();
verifyNoMoreInteractions(configuration, settingsDAO);
}
@Test
public void newLibComputationalListForAzure() {
when(configuration.getCloudProvider()).thenReturn(CloudProvider.AZURE);
when(settingsDAO.getServiceBaseName()).thenReturn("someSBN");
when(settingsDAO.getConfOsFamily()).thenReturn("someConfOsFamily");
when(settingsDAO.getAzureRegion()).thenReturn("someAzureRegion");
when(settingsDAO.getAzureResourceGroupName()).thenReturn("someAzureResourceGroup");
when(settingsDAO.getAzureSecurityGroupName()).thenReturn("someAzureResourceGroupName");
when(settingsDAO.getAzureSubnetName()).thenReturn("someAzureSubnetId");
when(settingsDAO.getAzureVpcName()).thenReturn("someAzureVpcId");
requestBuilder.newLibComputationalList(userInfo, uiDto, computationalResource);
verify(configuration, times(3)).getCloudProvider();
verify(settingsDAO).getServiceBaseName();
verify(settingsDAO).getConfOsFamily();
verify(settingsDAO).getAzureRegion();
verify(settingsDAO).getAzureResourceGroupName();
verify(settingsDAO).getAzureSecurityGroupName();
verify(settingsDAO).getAzureSubnetName();
verify(settingsDAO).getAzureVpcName();
verifyNoMoreInteractions(configuration, settingsDAO);
}
@Test
public void newLibComputationalListForGcp() {
when(configuration.getCloudProvider()).thenReturn(CloudProvider.GCP);
when(configuration.getMaxUserNameLength()).thenReturn(10);
when(settingsDAO.getServiceBaseName()).thenReturn("someSBN");
when(settingsDAO.getConfOsFamily()).thenReturn("someConfOsFamily");
requestBuilder.newLibComputationalList(userInfo, uiDto, computationalResource);
verify(configuration, times(3)).getCloudProvider();
verify(configuration).getMaxUserNameLength();
verify(settingsDAO).getServiceBaseName();
verify(settingsDAO).getConfOsFamily();
verifyNoMoreInteractions(configuration, settingsDAO);
}
@Test
public void newComputationalCreateForAws() {
when(configuration.getCloudProvider()).thenReturn(CloudProvider.AWS);
when(settingsDAO.getServiceBaseName()).thenReturn("someSBN");
when(settingsDAO.getConfOsFamily()).thenReturn("someConfOsFamily");
when(settingsDAO.getAwsRegion()).thenReturn("someAwsRegion");
when(settingsDAO.getAwsSecurityGroups()).thenReturn("someAwsSecurityGroups");
when(settingsDAO.getAwsSubnetId()).thenReturn("someAwsSubnetId");
when(settingsDAO.getAwsVpcId()).thenReturn("someAwsVpcId");
when(settingsDAO.getConfTagResourceId()).thenReturn("someConfTagResourceId");
ComputationalCreateFormDTO form = new AwsComputationalCreateForm();
requestBuilder.newComputationalCreate(userInfo, uiDto, form);
verify(configuration, times(3)).getCloudProvider();
verify(settingsDAO).getServiceBaseName();
verify(settingsDAO).getConfOsFamily();
verify(settingsDAO).getAwsRegion();
verify(settingsDAO).getAwsSecurityGroups();
verify(settingsDAO).getAwsSubnetId();
verify(settingsDAO).getAwsVpcId();
verify(settingsDAO).getConfTagResourceId();
verify(settingsDAO).getAwsNotebookSubnetId();
verify(settingsDAO).getAwsNotebookVpcId();
verifyNoMoreInteractions(configuration, settingsDAO);
}
@Test
public void newComputationalCreateForAzure() {
when(configuration.getCloudProvider()).thenReturn(CloudProvider.AZURE);
expectedException.expect(UnsupportedOperationException.class);
requestBuilder.newComputationalCreate(userInfo, uiDto, new AwsComputationalCreateForm());
}
@Test
public void newComputationalCreateForGcp() {
when(configuration.getCloudProvider()).thenReturn(CloudProvider.GCP);
when(configuration.getMaxUserNameLength()).thenReturn(10);
when(settingsDAO.getServiceBaseName()).thenReturn("someSBN");
when(settingsDAO.getConfOsFamily()).thenReturn("someConfOsFamily");
ComputationalCreateFormDTO form = new GcpComputationalCreateForm();
requestBuilder.newComputationalCreate(userInfo, uiDto, form);
verify(configuration, times(3)).getCloudProvider();
verify(configuration).getMaxUserNameLength();
verify(settingsDAO).getServiceBaseName();
verify(settingsDAO).getConfOsFamily();
verifyNoMoreInteractions(configuration, settingsDAO);
}
@Test
public void newComputationalCreateWithSparkForAws() {
when(configuration.getCloudProvider()).thenReturn(CloudProvider.AWS);
when(settingsDAO.getServiceBaseName()).thenReturn("someSBN");
when(settingsDAO.getConfOsFamily()).thenReturn("someConfOsFamily");
when(settingsDAO.getAwsRegion()).thenReturn("someAwsRegion");
when(settingsDAO.getAwsSecurityGroups()).thenReturn("someAwsSecurityGroups");
when(settingsDAO.getAwsSubnetId()).thenReturn("someAwsSubnetId");
when(settingsDAO.getAwsVpcId()).thenReturn("someAwsVpcId");
when(settingsDAO.getConfTagResourceId()).thenReturn("someConfTagResourceId");
SparkStandaloneClusterCreateForm form = new SparkStandaloneClusterCreateForm();
requestBuilder.newComputationalCreate(userInfo, uiDto, form);
verify(configuration, times(3)).getCloudProvider();
verify(settingsDAO).getServiceBaseName();
verify(settingsDAO).getConfOsFamily();
verify(settingsDAO).getAwsRegion();
verify(settingsDAO).getAwsSecurityGroups();
verify(settingsDAO).getAwsSubnetId();
verify(settingsDAO).getAwsVpcId();
verify(settingsDAO).getConfTagResourceId();
verify(settingsDAO).getAwsNotebookSubnetId();
verify(settingsDAO).getAwsNotebookVpcId();
verifyNoMoreInteractions(configuration, settingsDAO);
}
@Test
public void newComputationalCreateWithSparkForAzure() {
when(configuration.getCloudProvider()).thenReturn(CloudProvider.AZURE);
when(settingsDAO.getServiceBaseName()).thenReturn("someSBN");
when(settingsDAO.getConfOsFamily()).thenReturn("someConfOsFamily");
when(settingsDAO.isAzureDataLakeEnabled()).thenReturn(true);
when(settingsDAO.getAzureDataLakeClientId()).thenReturn("someDlId");
when(settingsDAO.getAzureRegion()).thenReturn("someAzureRegion");
when(settingsDAO.getAzureResourceGroupName()).thenReturn("someAzureResourceGroup");
when(settingsDAO.getAzureSecurityGroupName()).thenReturn("someAzureResourceGroupName");
when(settingsDAO.getAzureSubnetName()).thenReturn("someAzureSubnetId");
when(settingsDAO.getAzureVpcName()).thenReturn("someAzureVpcId");
SparkStandaloneClusterCreateForm form = new SparkStandaloneClusterCreateForm();
requestBuilder.newComputationalCreate(userInfo, uiDto, form);
verify(configuration, times(3)).getCloudProvider();
verify(settingsDAO).getServiceBaseName();
verify(settingsDAO).getConfOsFamily();
verify(settingsDAO, times(2)).isAzureDataLakeEnabled();
verify(settingsDAO).getAzureRegion();
verify(settingsDAO).getAzureResourceGroupName();
verify(settingsDAO).getAzureSecurityGroupName();
verify(settingsDAO).getAzureSubnetName();
verify(settingsDAO).getAzureVpcName();
}
@Test
public void newComputationalCreateWithSparkForGcp() {
when(configuration.getCloudProvider()).thenReturn(CloudProvider.GCP);
when(configuration.getMaxUserNameLength()).thenReturn(10);
when(settingsDAO.getServiceBaseName()).thenReturn("someSBN");
when(settingsDAO.getConfOsFamily()).thenReturn("someConfOsFamily");
SparkStandaloneClusterCreateForm form = new SparkStandaloneClusterCreateForm();
requestBuilder.newComputationalCreate(userInfo, uiDto, form);
verify(configuration, times(3)).getCloudProvider();
verify(configuration).getMaxUserNameLength();
verify(settingsDAO).getServiceBaseName();
verify(settingsDAO).getConfOsFamily();
verifyNoMoreInteractions(configuration, settingsDAO);
}
@Test
public void newComputationalTerminateForAws() {
when(configuration.getCloudProvider()).thenReturn(CloudProvider.AWS);
when(settingsDAO.getServiceBaseName()).thenReturn("someSBN");
when(settingsDAO.getConfOsFamily()).thenReturn("someConfOsFamily");
when(settingsDAO.getAwsRegion()).thenReturn("someAwsRegion");
when(settingsDAO.getAwsSecurityGroups()).thenReturn("someAwsSecurityGroups");
when(settingsDAO.getAwsSubnetId()).thenReturn("someAwsSubnetId");
when(settingsDAO.getAwsVpcId()).thenReturn("someAwsVpcId");
when(settingsDAO.getConfTagResourceId()).thenReturn("someConfTagResourceId");
requestBuilder.newComputationalTerminate(userInfo, "explName", "explId", "compName",
"compId", DataEngineType.CLOUD_SERVICE, "");
verify(configuration, times(3)).getCloudProvider();
verify(settingsDAO).getServiceBaseName();
verify(settingsDAO).getConfOsFamily();
verify(settingsDAO).getAwsRegion();
verify(settingsDAO).getAwsSecurityGroups();
verify(settingsDAO).getAwsSubnetId();
verify(settingsDAO).getAwsVpcId();
verify(settingsDAO).getConfTagResourceId();
verify(settingsDAO).getAwsNotebookVpcId();
verify(settingsDAO).getAwsNotebookSubnetId();
verifyNoMoreInteractions(configuration, settingsDAO);
}
@Test
public void newComputationalTerminateForAzure() {
when(configuration.getCloudProvider()).thenReturn(CloudProvider.AZURE);
when(settingsDAO.getServiceBaseName()).thenReturn("someSBN");
when(settingsDAO.getConfOsFamily()).thenReturn("someConfOsFamily");
when(settingsDAO.getAzureRegion()).thenReturn("someAzureRegion");
when(settingsDAO.getAzureResourceGroupName()).thenReturn("someAzureResourceGroup");
when(settingsDAO.getAzureSecurityGroupName()).thenReturn("someAzureResourceGroupName");
when(settingsDAO.getAzureSubnetName()).thenReturn("someAzureSubnetId");
when(settingsDAO.getAzureVpcName()).thenReturn("someAzureVpcId");
requestBuilder.newComputationalTerminate(userInfo, "explName", "explId", "compName",
"compId", DataEngineType.CLOUD_SERVICE, "");
verify(configuration, times(3)).getCloudProvider();
verify(settingsDAO).getServiceBaseName();
verify(settingsDAO).getConfOsFamily();
verify(settingsDAO).getAzureRegion();
verify(settingsDAO).getAzureResourceGroupName();
verify(settingsDAO).getAzureSecurityGroupName();
verify(settingsDAO).getAzureSubnetName();
verify(settingsDAO).getAzureVpcName();
verifyNoMoreInteractions(configuration, settingsDAO);
}
@Test
public void newComputationalTerminateForGcp() {
when(configuration.getCloudProvider()).thenReturn(CloudProvider.GCP);
when(configuration.getMaxUserNameLength()).thenReturn(10);
when(settingsDAO.getServiceBaseName()).thenReturn("someSBN");
when(settingsDAO.getConfOsFamily()).thenReturn("someConfOsFamily");
requestBuilder.newComputationalTerminate(userInfo, "explName", "explId", "compName",
"compId", DataEngineType.CLOUD_SERVICE, "");
verify(configuration, times(3)).getCloudProvider();
verify(configuration).getMaxUserNameLength();
verify(settingsDAO).getServiceBaseName();
verify(settingsDAO).getConfOsFamily();
verifyNoMoreInteractions(configuration, settingsDAO);
}
@Test
public void newComputationalStopForAws() {
when(configuration.getCloudProvider()).thenReturn(CloudProvider.AWS);
when(settingsDAO.getServiceBaseName()).thenReturn("someSBN");
when(settingsDAO.getConfOsFamily()).thenReturn("someConfOsFamily");
when(settingsDAO.getAwsRegion()).thenReturn("someAwsRegion");
when(settingsDAO.getAwsSecurityGroups()).thenReturn("someAwsSecurityGroups");
when(settingsDAO.getAwsSubnetId()).thenReturn("someAwsSubnetId");
when(settingsDAO.getAwsVpcId()).thenReturn("someAwsVpcId");
when(settingsDAO.getConfTagResourceId()).thenReturn("someConfTagResourceId");
final UserInstanceDTO exploratory = new UserInstanceDTO();
exploratory.setExploratoryId("explId");
exploratory.setExploratoryName("explName");
requestBuilder.newComputationalStop(userInfo, exploratory, "compName");
verify(configuration, times(2)).getCloudProvider();
verify(settingsDAO).getServiceBaseName();
verify(settingsDAO).getConfOsFamily();
verify(settingsDAO).getAwsRegion();
verify(settingsDAO).getAwsSecurityGroups();
verify(settingsDAO).getAwsSubnetId();
verify(settingsDAO).getAwsVpcId();
verify(settingsDAO).getConfTagResourceId();
verify(settingsDAO).getAwsNotebookSubnetId();
verify(settingsDAO).getAwsNotebookVpcId();
verifyNoMoreInteractions(configuration, settingsDAO);
}
@Test
public void newComputationalStopForAzure() {
when(configuration.getCloudProvider()).thenReturn(CloudProvider.AZURE);
when(settingsDAO.getServiceBaseName()).thenReturn("someSBN");
when(settingsDAO.getConfOsFamily()).thenReturn("someConfOsFamily");
when(settingsDAO.getAzureRegion()).thenReturn("someAzureRegion");
when(settingsDAO.getAzureResourceGroupName()).thenReturn("someAzureResourceGroup");
when(settingsDAO.getAzureSecurityGroupName()).thenReturn("someAzureResourceGroupName");
when(settingsDAO.getAzureSubnetName()).thenReturn("someAzureSubnetId");
when(settingsDAO.getAzureVpcName()).thenReturn("someAzureVpcId");
final UserInstanceDTO exploratory = new UserInstanceDTO();
exploratory.setExploratoryId("explId");
exploratory.setExploratoryName("explName");
requestBuilder.newComputationalStop(userInfo, exploratory, "compName");
verify(configuration, times(2)).getCloudProvider();
verify(settingsDAO).getServiceBaseName();
verify(settingsDAO).getConfOsFamily();
verify(settingsDAO).getAzureRegion();
verify(settingsDAO).getAzureResourceGroupName();
verify(settingsDAO).getAzureSecurityGroupName();
verify(settingsDAO).getAzureSubnetName();
verify(settingsDAO).getAzureVpcName();
verifyNoMoreInteractions(configuration, settingsDAO);
}
@Test
public void newComputationalStopForGcp() {
when(configuration.getCloudProvider()).thenReturn(CloudProvider.GCP);
when(configuration.getMaxUserNameLength()).thenReturn(10);
when(settingsDAO.getServiceBaseName()).thenReturn("someSBN");
when(settingsDAO.getConfOsFamily()).thenReturn("someConfOsFamily");
final UserInstanceDTO exploratory = new UserInstanceDTO();
exploratory.setExploratoryId("explId");
exploratory.setExploratoryName("explName");
requestBuilder.newComputationalStop(userInfo, exploratory, "compName");
verify(configuration, times(2)).getCloudProvider();
verify(configuration).getMaxUserNameLength();
verify(settingsDAO).getServiceBaseName();
verify(settingsDAO).getConfOsFamily();
verifyNoMoreInteractions(configuration, settingsDAO);
}
@Test
public void newComputationalStartForAws() {
when(configuration.getCloudProvider()).thenReturn(CloudProvider.AWS);
when(settingsDAO.getServiceBaseName()).thenReturn("someSBN");
when(settingsDAO.getConfOsFamily()).thenReturn("someConfOsFamily");
when(settingsDAO.getAwsRegion()).thenReturn("someAwsRegion");
when(settingsDAO.getAwsSecurityGroups()).thenReturn("someAwsSecurityGroups");
when(settingsDAO.getAwsSubnetId()).thenReturn("someAwsSubnetId");
when(settingsDAO.getAwsVpcId()).thenReturn("someAwsVpcId");
when(settingsDAO.getConfTagResourceId()).thenReturn("someConfTagResourceId");
final UserInstanceDTO exploratory = new UserInstanceDTO();
exploratory.setExploratoryId("explId");
exploratory.setExploratoryName("explName");
requestBuilder.newComputationalStart(userInfo, exploratory, "compName");
verify(configuration, times(2)).getCloudProvider();
verify(settingsDAO).getServiceBaseName();
verify(settingsDAO).getConfOsFamily();
verify(settingsDAO).getAwsRegion();
verify(settingsDAO).getAwsSecurityGroups();
verify(settingsDAO).getAwsSubnetId();
verify(settingsDAO).getAwsVpcId();
verify(settingsDAO).getConfTagResourceId();
verify(settingsDAO).getAwsNotebookSubnetId();
verify(settingsDAO).getAwsNotebookVpcId();
verifyNoMoreInteractions(configuration, settingsDAO);
}
@Test
public void newComputationalStartForAzure() {
when(configuration.getCloudProvider()).thenReturn(CloudProvider.AZURE);
when(settingsDAO.getServiceBaseName()).thenReturn("someSBN");
when(settingsDAO.getConfOsFamily()).thenReturn("someConfOsFamily");
when(settingsDAO.getAzureRegion()).thenReturn("someAzureRegion");
when(settingsDAO.getAzureResourceGroupName()).thenReturn("someAzureResourceGroup");
when(settingsDAO.getAzureSecurityGroupName()).thenReturn("someAzureResourceGroupName");
when(settingsDAO.getAzureSubnetName()).thenReturn("someAzureSubnetId");
when(settingsDAO.getAzureVpcName()).thenReturn("someAzureVpcId");
final UserInstanceDTO exploratory = new UserInstanceDTO();
exploratory.setExploratoryId("explId");
exploratory.setExploratoryName("explName");
requestBuilder.newComputationalStart(userInfo, exploratory, "compName");
verify(configuration, times(2)).getCloudProvider();
verify(settingsDAO).getServiceBaseName();
verify(settingsDAO).getConfOsFamily();
verify(settingsDAO).getAzureRegion();
verify(settingsDAO).getAzureResourceGroupName();
verify(settingsDAO).getAzureSecurityGroupName();
verify(settingsDAO).getAzureSubnetName();
verify(settingsDAO).getAzureVpcName();
verifyNoMoreInteractions(configuration, settingsDAO);
}
@Test
public void newComputationalStartForGcp() {
when(configuration.getCloudProvider()).thenReturn(CloudProvider.GCP);
when(configuration.getMaxUserNameLength()).thenReturn(10);
when(settingsDAO.getServiceBaseName()).thenReturn("someSBN");
when(settingsDAO.getConfOsFamily()).thenReturn("someConfOsFamily");
final UserInstanceDTO exploratory = new UserInstanceDTO();
exploratory.setExploratoryId("explId");
exploratory.setExploratoryName("explName");
requestBuilder.newComputationalStart(userInfo, exploratory, "compName");
verify(configuration, times(2)).getCloudProvider();
verify(configuration).getMaxUserNameLength();
verify(settingsDAO).getServiceBaseName();
verify(settingsDAO).getConfOsFamily();
verifyNoMoreInteractions(configuration, settingsDAO);
}
@Test
public void newExploratoryImageCreateForAws() {
when(configuration.getCloudProvider()).thenReturn(CloudProvider.AWS);
when(settingsDAO.getServiceBaseName()).thenReturn("someSBN");
when(settingsDAO.getConfOsFamily()).thenReturn("someConfOsFamily");
when(settingsDAO.getAwsRegion()).thenReturn("someAwsRegion");
when(settingsDAO.getAwsSecurityGroups()).thenReturn("someAwsSecurityGroups");
when(settingsDAO.getAwsSubnetId()).thenReturn("someAwsSubnetId");
when(settingsDAO.getAwsVpcId()).thenReturn("someAwsVpcId");
when(settingsDAO.getConfTagResourceId()).thenReturn("someConfTagResourceId");
requestBuilder.newExploratoryImageCreate(userInfo, uiDto, "compName");
verify(configuration, times(3)).getCloudProvider();
verify(settingsDAO).getServiceBaseName();
verify(settingsDAO).getConfOsFamily();
verify(settingsDAO).getAwsRegion();
verify(settingsDAO).getAwsSecurityGroups();
verify(settingsDAO).getAwsSubnetId();
verify(settingsDAO).getAwsVpcId();
verify(settingsDAO).getConfTagResourceId();
verify(settingsDAO).getAwsNotebookSubnetId();
verify(settingsDAO).getAwsNotebookVpcId();
verifyNoMoreInteractions(configuration, settingsDAO);
}
@Test
public void newExploratoryImageCreateForAzure() {
when(configuration.getCloudProvider()).thenReturn(CloudProvider.AZURE);
when(settingsDAO.getServiceBaseName()).thenReturn("someSBN");
when(settingsDAO.getConfOsFamily()).thenReturn("someConfOsFamily");
when(settingsDAO.getAzureRegion()).thenReturn("someAzureRegion");
when(settingsDAO.getAzureResourceGroupName()).thenReturn("someAzureResourceGroup");
when(settingsDAO.getAzureSecurityGroupName()).thenReturn("someAzureResourceGroupName");
when(settingsDAO.getAzureSubnetName()).thenReturn("someAzureSubnetId");
when(settingsDAO.getAzureVpcName()).thenReturn("someAzureVpcId");
requestBuilder.newExploratoryImageCreate(userInfo, uiDto, "compName");
verify(configuration, times(3)).getCloudProvider();
verify(settingsDAO).getServiceBaseName();
verify(settingsDAO).getConfOsFamily();
verify(settingsDAO).getAzureRegion();
verify(settingsDAO).getAzureResourceGroupName();
verify(settingsDAO).getAzureSecurityGroupName();
verify(settingsDAO).getAzureSubnetName();
verify(settingsDAO).getAzureVpcName();
verifyNoMoreInteractions(configuration, settingsDAO);
}
@Test
public void newExploratoryImageCreateForGcp() {
when(configuration.getCloudProvider()).thenReturn(CloudProvider.GCP);
when(configuration.getMaxUserNameLength()).thenReturn(10);
when(settingsDAO.getServiceBaseName()).thenReturn("someSBN");
when(settingsDAO.getConfOsFamily()).thenReturn("someConfOsFamily");
requestBuilder.newExploratoryImageCreate(userInfo, uiDto, "compName");
verify(configuration, times(3)).getCloudProvider();
verify(configuration).getMaxUserNameLength();
verify(settingsDAO).getServiceBaseName();
verify(settingsDAO).getConfOsFamily();
verifyNoMoreInteractions(configuration, settingsDAO);
}
@Test
public void newBackupCreate() {
List<String> configFiles = new ArrayList<>();
List<String> keys = new ArrayList<>();
List<String> certificates = new ArrayList<>();
List<String> jars = new ArrayList<>();
BackupFormDTO backupFormDTO = new BackupFormDTO(configFiles, keys, certificates,
jars, true, true);
EnvBackupDTO expectedEnvBackupDTO = EnvBackupDTO.builder().configFiles(configFiles).keys(keys)
.certificates(certificates).jars(jars).databaseBackup(true).logsBackup(true).id("someId").build();
EnvBackupDTO actualEnvBackupDTO = requestBuilder.newBackupCreate(backupFormDTO, "someId");
assertEquals(expectedEnvBackupDTO, actualEnvBackupDTO);
}
private UserInfo getUserInfo() {
return new UserInfo(USER, "token");
}
private ReuploadKeyDTO getReuploadFile() {
return new ReuploadKeyDTO().withContent("someContent").withEdgeUserName(USER).withContent("someContent");
}
}