Skip to content

Commit 1fbf784

Browse files
committed
fix: validate search when datetime is none
1 parent a2a7b1a commit 1fbf784

File tree

2 files changed

+7
-1
lines changed

2 files changed

+7
-1
lines changed

Diff for: stac_pydantic/api/search.py

+3-1
Original file line numberDiff line numberDiff line change
@@ -98,8 +98,10 @@ def validate_bbox(cls, v: BBox) -> BBox:
9898

9999
@field_validator("datetime")
100100
@classmethod
101-
def validate_datetime(cls, value: str) -> str:
101+
def validate_datetime(cls, value: Optional[str]) -> Optional[str]:
102102
# Split on "/" and replace no value or ".." with None
103+
if value is None:
104+
return value
103105
values = [v if v and v != ".." else None for v in value.split("/")]
104106

105107
# If there are more than 2 dates, it's invalid

Diff for: tests/api/test_search.py

+4
Original file line numberDiff line numberDiff line change
@@ -149,3 +149,7 @@ def test_search_geometry_bbox():
149149
def test_search_invalid_bbox(bbox):
150150
with pytest.raises(ValidationError):
151151
Search(collections=["foo"], bbox=bbox)
152+
153+
154+
def test_search_none_datetime() -> None:
155+
Search(datetime=None)

0 commit comments

Comments
 (0)