/** * Create an instance of {@link AwsParamsDto } * */ public AwsParamsDto createAwsParamsDto() { return new AwsParamsDto(); }
public Object createNewInstance() { return new AwsParamsDto(); }
@Override public AwsParamsDto build() { if (_storedValue == null) { return this.init(new AwsParamsDto()); } else { return ((AwsParamsDto) _storedValue); } }
/** * Returns AWS parameters DTO initialized with US East AWS region. * * @return the AWS parameters DTO */ private AwsParamsDto getAwsParamsDto() { return new AwsParamsDto(NO_AWS_ACCESS_KEY, NO_AWS_SECRET_KEY, NO_SESSION_TOKEN, NO_HTTP_PROXY_HOST, NO_HTTP_PROXY_PORT, AWS_REGION_NAME_US_EAST_1); } }
@Test public void getEmrClusterByIdAssertNoCallWhenClusterIdIsBlank() throws Exception { String clusterId = ""; assertNull(emrDao.getEmrClusterById(clusterId, new AwsParamsDto())); // Assert nothing was called on EMR operations verifyNoMoreInteractions(mockEmrOperations); }
@Test public void testGetAmazonSQSClient() { assertNotNull(awsClientFactory.getAmazonSQSClient( new AwsParamsDto(NO_AWS_ACCESS_KEY, NO_AWS_SECRET_KEY, NO_SESSION_TOKEN, HTTP_PROXY_HOST, HTTP_PROXY_PORT, AWS_REGION_NAME_US_EAST_1))); }
@Test public void testGetEc2ClientNoAwsCredentials() { assertNotNull(awsClientFactory.getEc2Client( new AwsParamsDto(NO_AWS_ACCESS_KEY, NO_AWS_SECRET_KEY, NO_SESSION_TOKEN, HTTP_PROXY_HOST, HTTP_PROXY_PORT, AWS_REGION_NAME_US_EAST_1))); }
@Test public void testGetEmrClientNoAwsCredentials() { assertNotNull(awsClientFactory.getEmrClient( new AwsParamsDto(NO_AWS_ACCESS_KEY, NO_AWS_SECRET_KEY, NO_SESSION_TOKEN, HTTP_PROXY_HOST, HTTP_PROXY_PORT, AWS_REGION_NAME_US_EAST_1))); } }
@Test public void testGetAmazonSNSClient() { assertNotNull(awsClientFactory.getAmazonSNSClient( new AwsParamsDto(NO_AWS_ACCESS_KEY, NO_AWS_SECRET_KEY, NO_SESSION_TOKEN, HTTP_PROXY_HOST, HTTP_PROXY_PORT, AWS_REGION_NAME_US_EAST_1))); }
@Test public void testGetEmrClient() { assertNotNull(awsClientFactory.getEmrClient( new AwsParamsDto(AWS_ASSUMED_ROLE_ACCESS_KEY, AWS_ASSUMED_ROLE_SECRET_KEY, AWS_ASSUMED_ROLE_SESSION_TOKEN, HTTP_PROXY_HOST, HTTP_PROXY_PORT, AWS_REGION_NAME_US_EAST_1))); }
@Test public void testGetEc2Client() { assertNotNull(awsClientFactory.getEc2Client( new AwsParamsDto(AWS_ASSUMED_ROLE_ACCESS_KEY, AWS_ASSUMED_ROLE_SECRET_KEY, AWS_ASSUMED_ROLE_SESSION_TOKEN, HTTP_PROXY_HOST, HTTP_PROXY_PORT, AWS_REGION_NAME_US_EAST_1))); }
/** * Constructs awsParamsDto with AWS parameters. * * @return the AWS params DTO object. */ public AwsParamsDto getAwsParamsDto() { // Get HTTP proxy configuration settings. String httpProxyHost = configurationHelper.getProperty(ConfigurationValue.HTTP_PROXY_HOST); Integer httpProxyPort = configurationHelper.getProperty(ConfigurationValue.HTTP_PROXY_PORT, Integer.class); // Get AWS region name. String awsRegionName = configurationHelper.getProperty(ConfigurationValue.AWS_REGION_NAME); // Create an AWS parameters DTO. AwsParamsDto awsParamsDto = new AwsParamsDto(); awsParamsDto.setHttpProxyHost(httpProxyHost); awsParamsDto.setHttpProxyPort(httpProxyPort); awsParamsDto.setAwsRegionName(awsRegionName); return awsParamsDto; }
@Test public void testDecryptInvalidCipher() { try { // Try to decrypt an invalid ciphertext. kmsDao.decrypt(new AwsParamsDto(), MockKmsOperationsImpl.MOCK_CIPHER_TEXT_INVALID); fail("Suppose to throw an InvalidCiphertextException when cipher text is invalid."); } catch (Exception e) { assertEquals(InvalidCiphertextException.class, e.getClass()); } } }
@Test public void testEquals() throws Exception { AwsParamsDto dto1 = new AwsParamsDto(); dto1.setHttpProxyHost("localhost1"); dto1.setHttpProxyPort(8080); AwsParamsDto dto2 = new AwsParamsDto(); dto2.setHttpProxyHost("localhost2"); dto2.setHttpProxyPort(8080); AwsParamsDto dto3 = new AwsParamsDto(); dto3.setHttpProxyHost("localhost1"); dto3.setHttpProxyPort(8080); assertTrue(!dto1.equals(dto2)); assertTrue(dto1.equals(dto3)); }
@Test public void testGetAmazonSNSClientCacheHitMiss() { // Create an AWS parameters DTO that contains proxy information. AwsParamsDto awsParamsDto = new AwsParamsDto(NO_AWS_ACCESS_KEY, NO_AWS_SECRET_KEY, NO_SESSION_TOKEN, HTTP_PROXY_HOST, HTTP_PROXY_PORT, AWS_REGION_NAME_US_EAST_1); // Get an Amazon SNS client. AmazonSNS amazonSNS = awsClientFactory.getAmazonSNSClient(awsParamsDto); // Confirm a cache hit. assertEquals(amazonSNS, awsClientFactory.getAmazonSNSClient( new AwsParamsDto(NO_AWS_ACCESS_KEY, NO_AWS_SECRET_KEY, NO_SESSION_TOKEN, HTTP_PROXY_HOST, HTTP_PROXY_PORT, AWS_REGION_NAME_US_EAST_1))); // Confirm a cache miss due to http proxy information. assertNotEquals(amazonSNS, awsClientFactory.getAmazonSNSClient( new AwsParamsDto(NO_AWS_ACCESS_KEY, NO_AWS_SECRET_KEY, NO_SESSION_TOKEN, HTTP_PROXY_HOST_2, HTTP_PROXY_PORT_2, AWS_REGION_NAME_US_EAST_1))); // Clear the cache. cacheManager.getCache(DaoSpringModuleConfig.HERD_CACHE_NAME).clear(); // Confirm a cache miss due to cleared cache. assertNotEquals(amazonSNS, awsClientFactory.getAmazonSNSClient(awsParamsDto)); }
@Test public void testGetActiveEmrClusterByNameWhenClusterNameIsBlank() { // Create an AWS parameters DTO. AwsParamsDto awsParamsDto = new AwsParamsDto(AWS_ASSUMED_ROLE_ACCESS_KEY, AWS_ASSUMED_ROLE_SECRET_KEY, AWS_ASSUMED_ROLE_SESSION_TOKEN, HTTP_PROXY_HOST, HTTP_PROXY_PORT, NO_AWS_REGION_NAME); // Call the method under test. ClusterSummary result = emrDaoImpl.getActiveEmrClusterByName(BLANK_TEXT, awsParamsDto); // Verify the external calls. verifyNoMoreInteractionsHelper(); // Validate the results. assertNull(result); }
@Test public void testDecrypt() { // Decrypt the test ciphertext. AwsParamsDto testAwsParamsDto = new AwsParamsDto(); testAwsParamsDto.setHttpProxyHost(HTTP_PROXY_HOST); testAwsParamsDto.setHttpProxyPort(HTTP_PROXY_PORT); // Decrypt the test ciphertext. String resultPlainText = kmsDao.decrypt(testAwsParamsDto, MockKmsOperationsImpl.MOCK_CIPHER_TEXT); // Validate the results. assertEquals(MockKmsOperationsImpl.MOCK_PLAIN_TEXT, resultPlainText); }
@Test public void testPublish() { // Publish an SNS message without proxy. assertEquals(new PublishResult().withMessageId(MESSAGE_ID), snsDao.publish( new AwsParamsDto(NO_AWS_ACCESS_KEY, NO_AWS_SECRET_KEY, NO_SESSION_TOKEN, NO_HTTP_PROXY_HOST, NO_HTTP_PROXY_PORT, AWS_REGION_NAME_US_EAST_1), AWS_SNS_TOPIC_ARN, MESSAGE_TEXT, NO_MESSAGE_HEADERS)); // Publish an SNS message using proxy settings. assertEquals(new PublishResult().withMessageId(MESSAGE_ID), snsDao .publish(new AwsParamsDto(NO_AWS_ACCESS_KEY, NO_AWS_SECRET_KEY, NO_SESSION_TOKEN, HTTP_PROXY_HOST, HTTP_PROXY_PORT, AWS_REGION_NAME_US_EAST_1), AWS_SNS_TOPIC_ARN, MESSAGE_TEXT, NO_MESSAGE_HEADERS)); // Publish an SNS message with message headers. assertEquals(new PublishResult().withMessageId(MESSAGE_ID), snsDao .publish(new AwsParamsDto(NO_AWS_ACCESS_KEY, NO_AWS_SECRET_KEY, NO_SESSION_TOKEN, HTTP_PROXY_HOST, HTTP_PROXY_PORT, AWS_REGION_NAME_US_EAST_1), AWS_SNS_TOPIC_ARN, MESSAGE_TEXT, Collections.singletonList(new MessageHeader(KEY, VALUE)))); } }
@Test public void testSendMessage() { // Send an SQS message without specifying HTTP proxy settings. assertEquals(new SendMessageResult().withMessageId(MESSAGE_ID), sqsDao.sendMessage( new AwsParamsDto(NO_AWS_ACCESS_KEY, NO_AWS_SECRET_KEY, NO_SESSION_TOKEN, NO_HTTP_PROXY_HOST, NO_HTTP_PROXY_PORT, AWS_REGION_NAME_US_EAST_1), AWS_SQS_QUEUE_NAME, MESSAGE_TEXT, NO_MESSAGE_HEADERS)); // Send an SQS message using proxy settings. assertEquals(new SendMessageResult().withMessageId(MESSAGE_ID), sqsDao .sendMessage(new AwsParamsDto(NO_AWS_ACCESS_KEY, NO_AWS_SECRET_KEY, NO_SESSION_TOKEN, HTTP_PROXY_HOST, HTTP_PROXY_PORT, AWS_REGION_NAME_US_EAST_1), AWS_SQS_QUEUE_NAME, MESSAGE_TEXT, NO_MESSAGE_HEADERS)); // Publish an SQS message with message headers. assertEquals(new SendMessageResult().withMessageId(MESSAGE_ID), sqsDao.sendMessage( new AwsParamsDto(NO_AWS_ACCESS_KEY, NO_AWS_SECRET_KEY, NO_SESSION_TOKEN, NO_HTTP_PROXY_HOST, NO_HTTP_PROXY_PORT, AWS_REGION_NAME_US_EAST_1), AWS_SNS_TOPIC_ARN, MESSAGE_TEXT, Collections.singletonList(new MessageHeader(KEY, VALUE)))); } }
@Test public void testHashCode() throws Exception { AwsParamsDto dto1 = new AwsParamsDto(); dto1.setHttpProxyHost("localhost1"); dto1.setHttpProxyPort(8080); AwsParamsDto dto2 = new AwsParamsDto(); dto2.setHttpProxyHost("localhost2"); dto2.setHttpProxyPort(8080); AwsParamsDto dto3 = new AwsParamsDto(); dto3.setHttpProxyHost("localhost1"); dto3.setHttpProxyPort(8080); assertTrue(dto1.hashCode() != dto2.hashCode()); assertTrue(dto1.hashCode() == dto3.hashCode()); } }