public void GetDateStrTest_1() { LittleLogger logger = new LittleLogger("../../Test_Data/GetDateStrTest_1/log.txt"); DateString dateStr = new DateString(logger); // Даты string date1 = "26.05.2015"; string dateAfterConversion1 = dateStr.GetYahooDate(date1); string date2 = "30.02.1998"; string dateAfterConversion2 = dateStr.GetYahooDate(date2); // Сравниваем ожидаемые и фактические значения Assert.AreEqual("26 May 2015", dateAfterConversion1); Assert.AreEqual("30 Feb 1998", dateAfterConversion2); }
public void ReadFromDBTest_2() { // Формируем объекты класса WeatherService EntityConnectionStringBuilder ConnectionString = new EntityConnectionStringBuilder(); ConnectionString.ProviderConnectionString = @"data source=../../Test_Data/ReadFromDBTest_2/YahooWeatherDB.sqlite"; ConnectionString.Provider = @"System.Data.SQLite"; ConnectionString.Metadata = @"res://*/Model1.csdl|res://*/Model1.ssdl|res://*/Model1.msl"; WeatherService wService1 = new WeatherService("Yahoo", ConnectionString.ToString()); ConnectionString.ProviderConnectionString = @"data source=../../Test_Data/ReadFromDBTest_2/YandexWeatherDB.sqlite"; WeatherService wService2 = new WeatherService("Yandex", ConnectionString.ToString()); // Параметр даты для запроса к БД LittleLogger logger = new LittleLogger("../../Test_Data/ReadFromDBTest_2/log.txt"); DateString dateStr = new DateString(logger); string date1 = dateStr.GetYahooDate("05.06.2014"); string date2 = dateStr.GetYandexDate("05.06.2014"); // Запрос погодных данных за 05.06.2014 Forecaster forecaster = new Forecaster(logger); List<City1Entity> weather1_1 = forecaster.GetCity1Weather(wService1, date1); List<City2Entity> weather1_2 = forecaster.GetCity2Weather(wService1, date1); List<City3Entity> weather1_3 = forecaster.GetCity3Weather(wService1, date1); List<City1Entity> weather2_1 = forecaster.GetCity1Weather(wService2, date2); List<City2Entity> weather2_2 = forecaster.GetCity2Weather(wService2, date2); List<City3Entity> weather2_3 = forecaster.GetCity3Weather(wService2, date2); // Сравниваем ожидаемые и фактические значения Assert.AreEqual(5, weather1_1.Count); Assert.AreEqual(3, weather1_2.Count); Assert.AreEqual(4, weather1_3.Count); Assert.AreEqual(10, weather2_1.Count); Assert.AreEqual(9, weather2_2.Count); Assert.AreEqual(8, weather2_3.Count); }
public void ReadFromDBTest_1() { // Формируем объект класса WeatherService EntityConnectionStringBuilder ConnectionString = new EntityConnectionStringBuilder(); ConnectionString.ProviderConnectionString = @"data source=../../Test_Data/ReadFromDBTest_1/YandexWeatherDB.sqlite"; ConnectionString.Provider = @"System.Data.SQLite"; ConnectionString.Metadata = @"res://*/Model1.csdl|res://*/Model1.ssdl|res://*/Model1.msl"; WeatherService wService = new WeatherService("Yandex", ConnectionString.ToString()); // Параметр даты для запроса к СУБД LittleLogger logger = new LittleLogger("../../Test_Data/ReadFromDBTest_1/log.txt"); DateString dateStr = new DateString(logger); string date = dateStr.GetYandexDate("05.06.2014"); // Запрос погодных данных за 05.06.2014 Forecaster forecaster = new Forecaster(logger); List<City1Entity> weather = forecaster.GetCity1Weather(wService, date); // Сравниваем ожидаемые и фактические значения Assert.AreEqual("2014-06-05 T22:58:10", weather[0].Date); }
// Обработчик нажатия на кнопку Посмотреть погоду protected void GetWeather_Click(object sender, EventArgs e) { // Объект для записи логов для записи логов LittleLogger logger = new LittleLogger("WeatherWebInterface_log.txt"); DateString datestring = new DateString(logger); Forecaster forecaster = new Forecaster(logger); try { // Определяем город для запроса City queryCity = (from city in CityList where city.Name == CityDropDownList.Items[CityDropDownList.SelectedIndex].ToString() select city).ElementAt<City>(0); // Определяем сервис погодных данных для запроса WeatherService queryWeatherService = (from weatherservice in WeatherServiceList where weatherservice.Name == ServiceDropDownList.Items[ServiceDropDownList.SelectedIndex].ToString() select weatherservice).ElementAt<WeatherService>(0); // Определяем дату для запроса // Если дата в календаре не выбрана string SelectedDate; if (Calendar.SelectedDate.ToShortDateString() == "01.01.0001") SelectedDate = Calendar.TodaysDate.ToShortDateString(); else SelectedDate = Calendar.SelectedDate.ToShortDateString(); string queryDate = ""; switch (ServiceDropDownList.SelectedIndex) { case 0: queryDate = datestring.GetYahooDate(SelectedDate); break; case 1: queryDate = datestring.GetYandexDate(SelectedDate); break; default: break; } // Запрос погодных данных + привязка к WeatherGridView switch (queryCity.SerialNumber) { case 0: WeatherGridView.DataSource = forecaster.GetCity1Weather(queryWeatherService, queryDate); break; case 1: WeatherGridView.DataSource = forecaster.GetCity2Weather(queryWeatherService, queryDate); break; case 2: WeatherGridView.DataSource = forecaster.GetCity3Weather(queryWeatherService, queryDate); break; default: break; } WeatherGridView.DataBind(); } catch (Exception exception) { // Запись в лог logger.WriteLog(System.DateTime.Now.ToString() + " " + exception.Message); ErrorText.Text = "Что-то пошло не так..."; } // Если таблицы не пуста if (WeatherGridView.Rows.Count != 0) { ErrorText.Text = ""; // Меняем текст заголовка таблицы WeatherGridView.HeaderRow.Cells[0].Text = "Дата"; WeatherGridView.HeaderRow.Cells[1].Text = "Температура"; WeatherGridView.HeaderRow.Cells[2].Text = "Давление"; WeatherGridView.HeaderRow.Cells[3].Text = "Влажность"; WeatherGridView.HeaderRow.Cells[4].Text = "Ветер"; WeatherGridView.HeaderRow.Cells[5].Text = "Облачность"; } else ErrorText.Text = "Ошибка! По заданной дате не найдено погодных данных... " + "Выберите другой день."; }