def payload_to_formdata(cls, payload_dict): """Converts an forecast metadata dict into a form_data dict. Parameters ---------- payload: dict API forecast metadata json repsonse as a dict. Returns ------- dict A dictionary for filling out form fields where keys are input name attributes. """ form_dict = {key: payload_dict[key] for key in cls.direct_keys} form_dict.update(utils.get_location_id(payload_dict)) form_dict.update( utils.parse_hhmm_field_from_api(payload_dict, 'issue_time_of_day')) form_dict.update( utils.parse_timedelta_from_api(payload_dict, 'lead_time_to_start')) form_dict.update( utils.parse_timedelta_from_api(payload_dict, 'run_length')) form_dict.update( utils.parse_timedelta_from_api(payload_dict, 'interval_length')) return form_dict
def payload_to_formdata(cls, payload_dict): """Converts an observation metadata dict into a form_data dict. Parameters ---------- payload: dict API observation metadata json repsonse as a dict. Returns ------- dict A dictionary for filling out form fields where keys are input name attributes. """ form_dict = {key: payload_dict[key] for key in cls.direct_keys} form_dict.update( utils.parse_timedelta_from_api(payload_dict, 'interval_length')) return form_dict
def payload_to_formdata(cls, payload_dict): """Converts an aggregate metadata dict into a form_data dict. Parameters ---------- payload: dict API forecast metadata json repsonse as a dict. Returns ------- dict A dictionary for filling out form fields where keys are input name attributes. Notes ----- This function fills the aggregate ceation form and does not copy its corresponding observation. """ form_dict = {key: payload_dict[key] for key in cls.direct_keys} form_dict.update( utils.parse_timedelta_from_api(payload_dict, 'interval_length')) return form_dict
def test_parse_timedelta_from_api(data, root, expected): assert utils.parse_timedelta_from_api(data, root) == expected