def test_instantiate(self): weather = exodata.WeatherFromCSV(self.csv_filepath, \ self.variable_map, geography = self.geography) self.assertEqual(weather.name, 'weather_from_csv') self.assertEqual(weather.file_path, self.csv_filepath) self.assertAlmostEqual(weather.lat.display_data(), 37.8716, places=4) self.assertAlmostEqual(weather.lon.display_data(), -122.2727, places=4) self.assertEqual(weather.tz_name, 'UTC')
def test_collect_data_default_time(self): start_time = '2016-10-19 19:53:00' final_time = '2016-10-20 06:53:00' time_header = 'DateUTC' # Instantiate weather object weather = exodata.WeatherFromCSV(self.csv_filepath, \ self.variable_map, \ geography = self.geography, \ time_header = time_header) # Get weather data weather.collect_data(start_time, final_time) # Check reference df_test = weather.display_data() self.check_df(df_test, 'collect_data_default_time.csv')
def test_collect_data_local_time_from_geography(self): start_time = '10/19/2016 12:53:00 PM' final_time = '10/19/2016 11:53:00 PM' time_header = 'TimePDT' # Instantiate weather object weather = exodata.WeatherFromCSV(self.csv_filepath, \ self.variable_map, \ geography = self.geography, \ time_header = time_header, \ tz_name = 'from_geography') # Get weather data weather.collect_data(start_time, final_time) # Check reference df_test = weather.display_data() self.check_df(df_test, 'collect_data_local_time_from_geography.csv')
def test_collect_data_local_time_from_tz_name(self): start_time = '10/19/2016 12:53:00 PM'; final_time = '10/19/2016 11:53:00 PM'; time_header = 'TimePDT'; # Instantiate weather object weather = exodata.WeatherFromCSV(self.csv_filepath, \ self.variable_map, \ self.geography, \ time_header = time_header, \ tz_name = 'America/Los_Angeles'); # Get weather data weather.collect_data(start_time, final_time); # Check reference df_test = weather.display_data(); self.check_df(df_test, 'collect_data_local_time_from_tz_name.csv');
def test_collect_data_clean_data(self): start_time = '2016-10-19 19:53:00' final_time = '2016-10-20 06:53:00' time_header = 'DateUTC' variable_map = {'TemperatureF' : ('weaTDryBul', units.degF), \ 'Dew PointF' : ('weaTDewPoi', units.degF), \ 'Humidity' : ('weaRelHum', units.percent), \ 'Sea Level PressureIn' : ('weaPAtm', units.inHg), \ 'WindDirDegrees' : ('weaWinDir', units.deg), \ 'Wind SpeedMPH' : ('weaWinSpe', units.mph)} clean_data = {'Wind SpeedMPH' : {'cleaning_type' : variables.Timeseries.cleaning_replace, \ 'cleaning_args' : ('Calm', 0)}} # Instantiate weather object weather = exodata.WeatherFromCSV(self.csv_filepath, \ variable_map, \ geography = self.geography, \ time_header = time_header, clean_data = clean_data) # Get weather data weather.collect_data(start_time, final_time) # Check reference df_test = weather.display_data() self.check_df(df_test, 'collect_data_clean_data.csv')
def test_instantiate_without_geography(self): with self.assertRaises(TypeError): weather = exodata.WeatherFromCSV(self.csv_filepath, self.variable_map)