static void Main(string[] args) { WeatherDataManager weatherData = new WeatherDataManager("YOUR-API- KEY", "London,UK"); //Current Wetter Console.WriteLine("LON: {0}, LAT: {1}", weatherData.weatherCurrent.location.coord.lon, weatherData.weatherCurrent.location.coord.lat); //The coordinates of the weather Console.WriteLine("Current Temperture: {0} °C", weatherData.weatherCurrent.weather.temperatur); //Current temperature Console.WriteLine("description weather: {0}", weatherData.weatherCurrent.weather.description); //Description of current weather //weather forecasting next 5 Days in 3 hour steps double maxTemperatur = -999; DateTime date = new DateTime(); foreach (WeatherAPI.Model.WeatherInNext5Days.Weather x in weatherData.weatherNext5Days.list) { if (x.temperatur > maxTemperatur) { maxTemperatur = x.temperatur; date = x.dt; } } Console.WriteLine("Maximum expected temperature in the next five days {0}°C at {1}", maxTemperatur, date.ToString()); Console.ReadLine(); }
public void Test_construction_with_mixed_null_parameters_throws_null_exception(IReader reader, INotify notify) { // Arrange. // Act. // Assert. Assert.Throws <ArgumentNullException>(() => _weatherDataManager = new WeatherDataManager(reader, notify)); }
public void GetWeatherData_DataIsFound_ReturnsData() { //Arrange var dayWeatherDatas = new List <DayWeatherData> { new DayWeatherData("Kaunas", DateTime.Now, new Forecastday()) }; var days = new List <DateTime> { DateTime.Today.AddDays(1) }; var city = "Kaunas"; var sensorMock = new Mock <ISensor>(MockBehavior.Strict); sensorMock.Setup(x => x.City).Returns(city); var weatherDataRepoMock = new Mock <IWeatherDataAccess>(MockBehavior.Strict); weatherDataRepoMock.Setup(x => x.TryGetWeatherData(city, days, out dayWeatherDatas)).Returns(true); var weatherDataManager = new WeatherDataManager(weatherDataRepoMock.Object); //Act var result = weatherDataManager.GetWeatherForecastData(sensorMock.Object, 1); //Assert Assert.AreEqual(1, result.Count); Assert.AreEqual(dayWeatherDatas[0], result[0]); }
public WeatherHistoryModel GetWeatherHistory(string city) { city = city.ToLowerInvariant(); var weatherDataManager = new WeatherDataManager(); if (weatherDataManager.IsCityInMonitorList(city)) { List <WeatherInfoEntity> weatherInfo = weatherDataManager.GetWeatherHistory(city); weatherInfo = weatherInfo.OrderByDescending(o => DateTime.Parse(o.Date)).Take(50).OrderBy(o => DateTime.Parse(o.Date)).ToList(); List <double> highTempList = new List <double>(); List <double> lowTempList = new List <double>(); List <string> dateList = new List <string>(); foreach (WeatherInfoEntity entity in weatherInfo) { highTempList.Add(entity.HighTemp); lowTempList.Add(entity.LowTemp); dateList.Add(entity.Date); } return(new WeatherHistoryModel() { City = city, HighTemp = highTempList.ToArray(), LowTemp = lowTempList.ToArray(), Date = dateList.ToArray() }); } else { //Query OpenWeather CityWeather cityWeather = new CityWeather(); Rootobject weatherInfo = cityWeather.GetWeather(city); if (weatherInfo != null) { string today = DateTime.Now.ToString("d"); weatherDataManager.UpdateCityInfoToTable(city, today); WeatherInfoEntity model = new WeatherInfoEntity(city, convertKtoF(weatherInfo.main.temp_max), convertKtoF(weatherInfo.main.temp_min), today); weatherDataManager.UpdateHistoryInfoToTable(model); return(new WeatherHistoryModel() { City = city, HighTemp = new double[] { model.HighTemp }, LowTemp = new double[] { model.LowTemp }, Date = new string[] { today } }); } else { return(null); // error } } }
static void Main(string[] args) { WeatherDataManager manager = new WeatherDataManager(); var forCast = new ForeCastReport(manager); var statistic = new StatisticReport(manager); var currentCondition = new CurrentConditionsReport(manager); manager.MeasurementsChange(21, 43, 78); Console.ReadKey(); }
public void setWeather(WeatherDataManager weather) { this.weather = weather; temperatur.Text = weather.weatherCurrent.weather.temperatur.ToString() + "°C"; lbl_Location.Text = weather.weatherCurrent.location.nameLocality; string path = Path.Combine(Environment.CurrentDirectory, @"GUI\ImageWeather\", weather.weatherCurrent.weather.icon + ".png"); Image image = Image.FromFile(path); pictureBox1.Image = image; }
public void UpdateWeatherInfo() { CityWeather cityWeather = new CityWeather(); var weatherDataManager = new WeatherDataManager(); string[] allCities = weatherDataManager.GetAllCities(); foreach (string c in allCities) { Thread.Sleep(1000); // sleep 1s to avoid throttle this.QueryOpenWeatherAndUpdateTable(cityWeather, weatherDataManager, c); } }
private void QueryOpenWeatherAndUpdateTable(CityWeather cityWeather, WeatherDataManager weatherDataManager, string city) { Rootobject weatherInfo = cityWeather.GetWeather(city); if (weatherInfo != null) { string today = DateTime.Now.ToString("d"); // string today = "3/9/2017"; weatherDataManager.UpdateCityInfoToTable(city, today); WeatherInfoEntity model = new WeatherInfoEntity(city, convertKtoF(weatherInfo.main.temp_max), convertKtoF(weatherInfo.main.temp_min), today); weatherDataManager.UpdateHistoryInfoToTable(model); } }
static void Main(string[] args) { WeatherDataManager dataManager = new WeatherDataManager(); CurrentConditionReport sub1 = new CurrentConditionReport(); ForeCastReport sub2 = new ForeCastReport(); StatisticReport sub3 = new StatisticReport();; sub1.Register(dataManager); dataManager.WeatherChange(100, 200, 300); sub2.Register(dataManager); sub3.Register(dataManager); dataManager.WeatherChange(100, 200, 300); sub2.Unregister(dataManager); dataManager.WeatherChange(100, 200, 300); System.Console.ReadKey(); }
static void Main(string[] args) { Console.WriteLine("Hello."); var extractor = new FileExtractor(new FileSystem()); var weather = new WeatherData(); var manager = new WeatherDataManager(extractor, weather); Console.WriteLine($"Processing the file '{AppConstants.FullFileName}'."); try { var result = manager.GetDayWithLeastChange(AppConstants.FullFileName); Console.WriteLine($"The result is: {result}."); } catch (Exception exception) { Console.WriteLine($"The application threw the following exception: {exception.Message}."); } Console.WriteLine("I hoped you enjoyed it!"); }
public WeatherDataManagerTests() { _reader = Substitute.For <IReader>(); _notify = Substitute.For <INotify>(); _weatherDataManager = new WeatherDataManager(_reader, _notify); }
public string[] GetAllCities() { var weatherDataManager = new WeatherDataManager(); return(weatherDataManager.GetAllCities()); }
public SimpelGUI(WeatherDataManager weather) { InitializeComponent(); setWeather(weather); }