def _get_end_date(self, filename): from cis.parse_datetime import parse_datetimestr_to_std_time metadata_dict = hdf.get_hdf4_file_metadata(filename) date = self._parse_datetime(metadata_dict, 'RANGEENDINGDATE') time = self._parse_datetime(metadata_dict, 'RANGEENDINGTIME') datetime_str = date + " " + time return parse_datetimestr_to_std_time(datetime_str)
def _get_end_date(self, filename): from cis.parse_datetime import parse_datetimestr_to_std_time metadata_dict = hdf.get_hdf4_file_metadata(filename) date = self._parse_datetime(metadata_dict, 'RANGEENDINGDATE') time = self._parse_datetime(metadata_dict, 'RANGEENDINGTIME') datetime_str = date + " " + time return parse_datetimestr_to_std_time(datetime_str)
def check_valid_min_max_args(min_val, max_val, step, parser, range_axis): """ If a val range was specified, checks that they are valid numbers and the min is less than the max """ from cis.parse_datetime import parse_as_number_or_datetime, parse_as_float_or_time_delta, \ parse_datetimestr_to_std_time from cis.time_util import convert_datetime_to_std_time import datetime ax_range = {} if min_val is not None: dt = parse_as_number_or_datetime(min_val, range_axis + "min", parser) if isinstance(dt, datetime.datetime): ax_range[range_axis + "min"] = convert_datetime_to_std_time(dt) else: ax_range[range_axis + "min"] = dt if max_val is not None: dt = parse_as_number_or_datetime(max_val, range_axis + "max", parser) if isinstance(dt, datetime.datetime): ax_range[range_axis + "max"] = parse_datetimestr_to_std_time(str(datetime.datetime(*dt))) else: ax_range[range_axis + "max"] = dt if step is not None: ax_range[range_axis + "step"] = parse_as_float_or_time_delta(step, range_axis + "step", parser) return ax_range
def _get_start_date(self, filename): from cis.parse_datetime import parse_datetimestr_to_std_time metadata_dict = hdf.get_hdf4_file_metadata(filename) date = self._parse_datetime(metadata_dict, "RANGEBEGINNINGDATE") time = self._parse_datetime(metadata_dict, "RANGEBEGINNINGTIME") datetime_str = date + " " + time return parse_datetimestr_to_std_time(datetime_str)
def test_that_can_parse_datetimestr_to_obj(): # when not specifying the hours, minutes or seconds, 0 is used eq_(parse_datetimestr_to_std_time("2010-02-05 02:15:45"), convert_datetime_to_std_time(dt.datetime(2010, 02, 05, 02, 15, 45))) eq_(parse_datetimestr_to_std_time("2010-02-05 02:15"), convert_datetime_to_std_time(dt.datetime(2010, 02, 05, 02, 15, 0))) eq_(parse_datetimestr_to_std_time("2010-02-05 02"), convert_datetime_to_std_time(dt.datetime(2010, 02, 05, 02, 0, 0))) eq_(parse_datetimestr_to_std_time("2010-02-05"), convert_datetime_to_std_time(dt.datetime(2010, 02, 05, 0, 0, 0))) # GOTCHA: when not specifying an element of a date (i.e. the year, month or day), the current date is used now = dt.datetime.now() eq_(parse_datetimestr_to_std_time("2010-02-05"), convert_datetime_to_std_time(dt.datetime(2010, 02, 05))) eq_(parse_datetimestr_to_std_time("2010-12"), convert_datetime_to_std_time(dt.datetime(2010, 12, now.day))) eq_(parse_datetimestr_to_std_time("2010-"), convert_datetime_to_std_time(dt.datetime(2010, now.month, now.day))) eq_(parse_datetimestr_to_std_time(""), convert_datetime_to_std_time(dt.datetime(now.year, now.month, now.day)))
def test_that_can_parse_datetimestr_to_obj(): from cis.time_util import convert_datetime_to_std_time import datetime as dt # when not specifying the hours, minutes or seconds, 0 is used eq_(parse_datetimestr_to_std_time("2010-02-05 02:15:45"), convert_datetime_to_std_time(dt.datetime(2010, 2, 5, 2, 15, 45))) eq_(parse_datetimestr_to_std_time("2010-02-05 02:15"), convert_datetime_to_std_time(dt.datetime(2010, 2, 5, 2, 15, 0))) eq_(parse_datetimestr_to_std_time("2010-02-05 02"), convert_datetime_to_std_time(dt.datetime(2010, 2, 5, 2, 0, 0))) eq_(parse_datetimestr_to_std_time("2010-02-05"), convert_datetime_to_std_time(dt.datetime(2010, 2, 5, 0, 0, 0))) # GOTCHA: when not specifying an element of a date (i.e. the year, month or day), the current date is used now = dt.datetime.now() eq_(parse_datetimestr_to_std_time("2010-02-05"), convert_datetime_to_std_time(dt.datetime(2010, 2, 5))) eq_(parse_datetimestr_to_std_time("2010-12"), convert_datetime_to_std_time(dt.datetime(2010, 12, now.day))) eq_(parse_datetimestr_to_std_time("2010-"), convert_datetime_to_std_time(dt.datetime(2010, now.month, now.day)))