Skip to content

Instantly share code, notes, and snippets.

@pytest.mark.parametrize(
"partial_date, expected",
[
("THU OCT 02 14:07:47", datetime(2014, 10, 2, 14, 7, 47)),
("MON MAR 02 11:40:47", datetime(2020, 3, 2, 11, 40, 47)),
("TUE JAN 26 00:16:32", datetime(2016, 1, 26, 0, 16, 32)),
("WED JUN 28 17:03:26", datetime(2017, 6, 28, 17, 3, 26)),
("FRI NOV 30 10:55:55", datetime(2018, 11, 30, 10, 55, 55)),
("MON SEP 09 14:58:19", datetime(2019, 9, 9, 14, 58, 19)),
("MON FEB 29 13:37:00", datetime(2016, 2, 29, 13, 37, 0)),
def parse_date_from_incomplete_string(incomplete_dt: str) -> datetime:
current_year = datetime.today().year
search_range = range(current_year, current_year - 28, -1)
candidate_dates = _find_possible_dates(search_range, incomplete_dt)
for dt in candidate_dates:
if _weekdays_match(dt, incomplete_dt):
return dt
raise ValueError("Impossible date")

Keybase proof

I hereby claim:

  • I am netletic on github.
  • I am netletic (https://keybase.io/netletic) on keybase.
  • I have a public key ASCAh-V2qMJm3urSkK7b0TZxfHYv4t7KcFDALU9qJ6MwDQo

To claim this, I am signing this object: