Skip to content

Commit

Permalink
Merge branch 'master' into feat/update-collection
Browse files Browse the repository at this point in the history
  • Loading branch information
paulfouquet committed Feb 25, 2025
2 parents 50436ab + 0a061ba commit a21a889
Show file tree
Hide file tree
Showing 2 changed files with 21 additions and 2 deletions.
4 changes: 3 additions & 1 deletion scripts/cli/cli_helper.py
Original file line number Diff line number Diff line change
Expand Up @@ -80,7 +80,9 @@ def is_argo() -> bool:
return bool(environ.get("ARGO_TEMPLATE"))


def valid_date(s: str) -> datetime:
def valid_date(s: str) -> datetime | None:
if not s:
return None
try:
return parse_rfc_3339_date(s)
except ValueError as e:
Expand Down
19 changes: 18 additions & 1 deletion scripts/cli/tests/cli_helper_test.py
Original file line number Diff line number Diff line change
@@ -1,6 +1,9 @@
from datetime import datetime

from pytest import raises
from pytest_subtests import SubTests

from scripts.cli.cli_helper import TileFiles, coalesce_multi_single, get_tile_files, parse_list
from scripts.cli.cli_helper import TileFiles, coalesce_multi_single, get_tile_files, parse_list, valid_date


def test_get_tile_files(subtests: SubTests) -> None:
Expand Down Expand Up @@ -71,3 +74,17 @@ def test_coalesce_nothing() -> None:
single_item = ""
coalesced_list = coalesce_multi_single(multi_items, single_item)
assert coalesced_list == []


def test_valid_date_empty_string() -> None:
assert valid_date("") is None


def test_valid_date_valid_string() -> None:
assert isinstance(valid_date("2024-11-21"), datetime)


def test_valid_date_invalid_string() -> None:
with raises(Exception) as e:
valid_date("foo")
assert str(e.value) == "not a valid date: foo"

0 comments on commit a21a889

Please sign in to comment.