static void GetCurrentForecast(float lat, float lng, string tempScale) { try { // Plugs google response into openweathermap API WebRequest request = WebRequest.Create("http://api.openweathermap.org/data/2.5/weather?lat=" + lat + "&lon=" + lng + "&APPID=408e6e270720aed460c1c391408063f5"); WebResponse response = request.GetResponse(); Stream apiText = response.GetResponseStream(); StreamReader reader = new StreamReader(apiText); serverData = reader.ReadToEnd(); // Pulls current temperature in Kelvin CurrentTemp tmp = JsonConvert.DeserializeObject <CurrentTemp>((JObject.Parse(serverData)["main"]).ToString()); //Main tmpMax = JsonConvert.DeserializeObject<Main>((JObject.Parse(serverData)["temp_max"]).ToString()); //Main tmpMin = JsonConvert.DeserializeObject<Main>((JObject.Parse(serverData)["temp_min"]).ToString()); OpenWeatherMap_Current.Weather condition = JsonConvert.DeserializeObject <OpenWeatherMap_Current.Weather>((JObject.Parse(serverData)["weather"][0]).ToString()); // Invokes logkeeper to track each query InvokeCurrentTempLogkeeper(tmp.Temp); Console.WriteLine(); Console.WriteLine(" " + UNDERLINE + " " + RESET); Console.WriteLine("***" + UNDERLINE + "CURRENT WEATHER" + RESET + "***"); Console.WriteLine(); // Converts temperature in Kelvin to Farenheit or Celsius, // dependent on user choice DisplayTemp(tempScale, tmp.Temp, tmp.TempMax, tmp.TempMin); Console.WriteLine("CONDITIONS: " + condition.Description.ToUpper()); Console.WriteLine(); // Closes StreamReader reader.Close(); response.Close(); } catch (System.Net.WebException) { Console.WriteLine("You may be over the request limit! Try again soon."); } }
public async Task GetCurrentTempAsync_LondonsIdIspassed_resultIsNotNull() { CurrentTemp result = await WeatherProvider.GetCurrentTempAsync("328328"); Assert.IsNotNull(result); }