Search in sources :

Example 1 with ClusterState

use of com.amazonaws.services.elasticmapreduce.model.ClusterState in project herd by FINRAOS.

the class EmrHelperTest method testGetActiveEmrClusterIdAssertErrorWhenClusterIdSpecifiedAndClusterStateNotActive.

@Test
public void testGetActiveEmrClusterIdAssertErrorWhenClusterIdSpecifiedAndClusterStateNotActive() {
    EmrDao originalEmrDao = emrHelper.getEmrDao();
    EmrDao mockEmrDao = mock(EmrDao.class);
    emrHelper.setEmrDao(mockEmrDao);
    try {
        String emrClusterId = "emrClusterId";
        String emrClusterName = "emrClusterName";
        String expectedEmrClusterId = "expectedEmrClusterId";
        ClusterState actualClusterState = ClusterState.TERMINATED;
        when(mockEmrDao.getEmrClusterById(any(), any())).thenReturn(new Cluster().withId(expectedEmrClusterId).withName(emrClusterName).withStatus(new ClusterStatus().withState(actualClusterState)));
        try {
            emrHelper.getActiveEmrClusterId(emrClusterId, emrClusterName, null);
            fail();
        } catch (IllegalArgumentException e) {
            assertEquals(String.format("The cluster with ID \"%s\" is not active. The cluster state must be in one of [STARTING, BOOTSTRAPPING, RUNNING, " + "WAITING]. Current state is \"%s\"", emrClusterId, actualClusterState), e.getMessage());
        }
        verify(mockEmrDao).getEmrClusterById(eq(emrClusterId), any());
        verifyNoMoreInteractions(mockEmrDao);
    } finally {
        emrHelper.setEmrDao(originalEmrDao);
    }
}
Also used : ClusterState(com.amazonaws.services.elasticmapreduce.model.ClusterState) Cluster(com.amazonaws.services.elasticmapreduce.model.Cluster) EmrDao(org.finra.herd.dao.EmrDao) ClusterStatus(com.amazonaws.services.elasticmapreduce.model.ClusterStatus) Test(org.junit.Test) AbstractDaoTest(org.finra.herd.dao.AbstractDaoTest)

Example 2 with ClusterState

use of com.amazonaws.services.elasticmapreduce.model.ClusterState in project herd by FINRAOS.

the class EmrDaoTest method getEmrClusterStatusByIdAssertReturnClusterState.

@Test
public void getEmrClusterStatusByIdAssertReturnClusterState() throws Exception {
    String clusterId = "clusterId";
    ClusterState expectedState = ClusterState.BOOTSTRAPPING;
    when(mockEmrOperations.describeClusterRequest(any(), any())).then(new Answer<DescribeClusterResult>() {

        @Override
        public DescribeClusterResult answer(InvocationOnMock invocation) throws Throwable {
            DescribeClusterRequest describeClusterRequest = invocation.getArgument(1);
            assertEquals(clusterId, describeClusterRequest.getClusterId());
            DescribeClusterResult describeClusterResult = new DescribeClusterResult();
            Cluster cluster = new Cluster();
            ClusterStatus status = new ClusterStatus();
            status.setState(expectedState);
            cluster.setStatus(status);
            describeClusterResult.setCluster(cluster);
            return describeClusterResult;
        }
    });
    assertEquals(expectedState.toString(), emrDao.getEmrClusterStatusById(clusterId, new AwsParamsDto()));
}
Also used : ClusterState(com.amazonaws.services.elasticmapreduce.model.ClusterState) AwsParamsDto(org.finra.herd.model.dto.AwsParamsDto) DescribeClusterRequest(com.amazonaws.services.elasticmapreduce.model.DescribeClusterRequest) DescribeClusterResult(com.amazonaws.services.elasticmapreduce.model.DescribeClusterResult) InvocationOnMock(org.mockito.invocation.InvocationOnMock) Cluster(com.amazonaws.services.elasticmapreduce.model.Cluster) ClusterStatus(com.amazonaws.services.elasticmapreduce.model.ClusterStatus) Test(org.junit.Test)

Aggregations

Cluster (com.amazonaws.services.elasticmapreduce.model.Cluster)2 ClusterState (com.amazonaws.services.elasticmapreduce.model.ClusterState)2 ClusterStatus (com.amazonaws.services.elasticmapreduce.model.ClusterStatus)2 Test (org.junit.Test)2 DescribeClusterRequest (com.amazonaws.services.elasticmapreduce.model.DescribeClusterRequest)1 DescribeClusterResult (com.amazonaws.services.elasticmapreduce.model.DescribeClusterResult)1 AbstractDaoTest (org.finra.herd.dao.AbstractDaoTest)1 EmrDao (org.finra.herd.dao.EmrDao)1 AwsParamsDto (org.finra.herd.model.dto.AwsParamsDto)1 InvocationOnMock (org.mockito.invocation.InvocationOnMock)1