@Test public void testParseJsonObjectFromUrlMalformedURLException() { try { urlHelper.parseJsonObjectFromUrl(MockUrlOperationsImpl.MOCK_URL_MALFORMED_URL_EXCEPTION); } catch (IllegalArgumentException e) { assertEquals(String.format("Failed to read JSON from the URL: url=\"%s\"", MockUrlOperationsImpl.MOCK_URL_MALFORMED_URL_EXCEPTION), e.getMessage()); } }
@Test public void testParseJsonObjectFromUrlJsonParseException() { try { urlHelper.parseJsonObjectFromUrl(MockUrlOperationsImpl.MOCK_URL_JSON_PARSE_EXCEPTION); } catch (IllegalArgumentException e) { assertEquals(String.format("Failed to parse JSON object from the URL: url=\"%s\"", MockUrlOperationsImpl.MOCK_URL_JSON_PARSE_EXCEPTION), e.getMessage()); } }
@Test public void testParseJsonObjectFromUrl() { assertEquals(MockUrlOperationsImpl.MOCK_JSON_STRING, urlHelper.parseJsonObjectFromUrl(MockUrlOperationsImpl.MOCK_URL_VALID).toJSONString()); }
JSONObject jsonObject = urlHelper.parseJsonObjectFromUrl(ec2PricingListUrl);
JSONObject jsonObject = urlHelper.parseJsonObjectFromUrl(ec2PricingListUrl);
when(urlHelper.parseJsonObjectFromUrl(EC2_PRICING_LIST_URL)).thenReturn(jsonObject); when(jsonHelper.getKeyValue(jsonObject, Ec2OnDemandPricingUpdateServiceImpl.JSON_KEY_NAME_PRODUCTS, JSONObject.class)).thenReturn(products); when(jsonHelper.getKeyValue(products, EC2_PRODUCT_KEY, JSONObject.class)).thenReturn(product); verify(urlHelper).parseJsonObjectFromUrl(EC2_PRICING_LIST_URL); verify(jsonHelper).getKeyValue(jsonObject, Ec2OnDemandPricingUpdateServiceImpl.JSON_KEY_NAME_PRODUCTS, JSONObject.class); verify(jsonHelper).getKeyValue(products, EC2_PRODUCT_KEY, JSONObject.class);
when(urlHelper.parseJsonObjectFromUrl(EC2_PRICING_LIST_URL)).thenReturn(jsonObject); when(jsonHelper.getKeyValue(jsonObject, Ec2OnDemandPricingUpdateServiceImpl.JSON_KEY_NAME_PRODUCTS, JSONObject.class)).thenReturn(products); when(jsonHelper.getKeyValue(products, EC2_PRODUCT_KEY, JSONObject.class)).thenReturn(product); verify(urlHelper).parseJsonObjectFromUrl(EC2_PRICING_LIST_URL); verify(jsonHelper).getKeyValue(jsonObject, Ec2OnDemandPricingUpdateServiceImpl.JSON_KEY_NAME_PRODUCTS, JSONObject.class); verify(jsonHelper).getKeyValue(products, EC2_PRODUCT_KEY, JSONObject.class);
@Test public void testParseJsonObjectFromUrlWithProxySettingsNoProxyPort() throws Exception { // Override the configuration to specify proxy settings without proxy port. Map<String, Object> overrideMap = new HashMap<>(); overrideMap.put(ConfigurationValue.HTTP_PROXY_HOST.getKey(), HTTP_PROXY_HOST); modifyPropertySourceInEnvironment(overrideMap); try { assertEquals(MockUrlOperationsImpl.MOCK_JSON_STRING, urlHelper.parseJsonObjectFromUrl(MockUrlOperationsImpl.MOCK_URL_VALID).toJSONString()); } finally { // Restore the property sources so we don't affect other tests. restorePropertySourceInEnvironment(); } } }
@Test public void testParseJsonObjectFromUrlWithProxySettings() throws Exception { // Override the configuration to specify proxy settings. Map<String, Object> overrideMap = new HashMap<>(); overrideMap.put(ConfigurationValue.HTTP_PROXY_HOST.getKey(), HTTP_PROXY_HOST); overrideMap.put(ConfigurationValue.HTTP_PROXY_PORT.getKey(), HTTP_PROXY_PORT); modifyPropertySourceInEnvironment(overrideMap); try { assertEquals(MockUrlOperationsImpl.MOCK_JSON_STRING, urlHelper.parseJsonObjectFromUrl(MockUrlOperationsImpl.MOCK_URL_VALID).toJSONString()); } finally { // Restore the property sources so we don't affect other tests. restorePropertySourceInEnvironment(); } }
when(urlHelper.parseJsonObjectFromUrl(EC2_PRICING_LIST_URL)).thenReturn(jsonObject); when(jsonHelper.getKeyValue(jsonObject, Ec2OnDemandPricingUpdateServiceImpl.JSON_KEY_NAME_PRODUCTS, JSONObject.class)).thenReturn(products); when(jsonHelper.getKeyValue(products, EC2_PRODUCT_KEY, JSONObject.class)).thenReturn(product); verify(urlHelper).parseJsonObjectFromUrl(EC2_PRICING_LIST_URL); verify(jsonHelper).getKeyValue(jsonObject, Ec2OnDemandPricingUpdateServiceImpl.JSON_KEY_NAME_PRODUCTS, JSONObject.class); verify(jsonHelper).getKeyValue(products, EC2_PRODUCT_KEY, JSONObject.class);
when(urlHelper.parseJsonObjectFromUrl(EC2_PRICING_LIST_URL)).thenReturn(jsonObject); when(jsonHelper.getKeyValue(jsonObject, Ec2OnDemandPricingUpdateServiceImpl.JSON_KEY_NAME_PRODUCTS, JSONObject.class)).thenReturn(products); when(jsonHelper.getKeyValue(products, EC2_PRODUCT_KEY, JSONObject.class)).thenReturn(product); verify(urlHelper).parseJsonObjectFromUrl(EC2_PRICING_LIST_URL); verify(jsonHelper).getKeyValue(jsonObject, Ec2OnDemandPricingUpdateServiceImpl.JSON_KEY_NAME_PRODUCTS, JSONObject.class); verify(jsonHelper).getKeyValue(products, EC2_PRODUCT_KEY, JSONObject.class);