Example #1
0
        // Получение погодных данных для города с порядковым номером 2
        // за дату date
        public List<City2Entity> GetCity2Weather(WeatherService wservice,
                                                        string date)
        {
            List<City2Entity> queryResult = new List<City2Entity>();

            try
            {
                // Подключаемся к СУБД
                WeatherDBEntity weatherDB = new WeatherDBEntity(wservice.ConnectionString);

                // Запрос погодных данных за дату date
                queryResult =
                    (from item in weatherDB.City2Entity.ToList<City2Entity>().AsParallel()
                     where item.Date.Contains(date)
                     orderby item.Date descending
                     select item).ToList<City2Entity>();

                weatherDB.Dispose();
            }
            catch (Exception exception)
            {
                // Делаем запись в лог файл                
                Logger.WriteLog(System.DateTime.Now.ToString()
                    + " "
                    + exception.TargetSite.ToString()
                    + " "
                    + exception.Message);
            }

            return queryResult;
        }
        public void WeatherServiceInitTest()
        {
            WeatherService wService1 = new WeatherService("Yahoo", "CnctStr1");
            WeatherService wService2 = new WeatherService("Yandex", "CnctStr2");

            // Сравниваем ожидаемые и фактические значения
            Assert.AreEqual("Yahoo", wService1.Name);
            Assert.AreEqual("Yandex", wService2.Name);
            Assert.AreEqual("CnctStr1", wService1.ConnectionString);
            Assert.AreEqual("CnctStr2", wService2.ConnectionString);
        }
Example #3
0
        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);
        }
Example #4
0
        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);
        }