diff --git a/stac_fastapi/api/tests/test_app.py b/stac_fastapi/api/tests/test_app.py index 3c214a952..5fd7d5dbb 100644 --- a/stac_fastapi/api/tests/test_app.py +++ b/stac_fastapi/api/tests/test_app.py @@ -1,4 +1,4 @@ -from datetime import datetime +from datetime import datetime as python_datetime from typing import List, Optional, Union import attr @@ -141,7 +141,7 @@ def get_search( ids: Optional[List[str]] = None, bbox: Optional[List[NumType]] = None, intersects: Optional[str] = None, - datetime: Optional[Union[str, datetime]] = None, + datetime: Optional[Union[str, python_datetime]] = None, limit: Optional[int] = 10, filter: Optional[str] = None, filter_crs: Optional[str] = None, @@ -221,7 +221,7 @@ def get_search( ids: Optional[List[str]] = None, bbox: Optional[List[NumType]] = None, intersects: Optional[str] = None, - datetime: Optional[Union[str, datetime]] = None, + datetime: Optional[Union[str, python_datetime]] = None, limit: Optional[int] = 10, **kwargs, ) -> stac.ItemCollection: @@ -247,7 +247,7 @@ def item_collection( self, collection_id: str, bbox: Optional[List[Union[float, int]]] = None, - datetime: Optional[Union[str, datetime]] = None, + datetime: Optional[Union[str, python_datetime]] = None, limit: int = 10, token: str = None, **kwargs, @@ -400,10 +400,11 @@ def get_search( ids: Optional[List[str]] = None, bbox: Optional[List[NumType]] = None, intersects: Optional[str] = None, - datetime: Optional[Union[str, datetime]] = None, + datetime: Optional[Union[str, python_datetime]] = None, limit: Optional[int] = 10, **kwargs, ): + assert isinstance(datetime, python_datetime) return datetime def get_item(self, item_id: str, collection_id: str, **kwargs) -> stac.Item: @@ -419,7 +420,7 @@ def item_collection( self, collection_id: str, bbox: Optional[List[Union[float, int]]] = None, - datetime: Optional[Union[str, datetime]] = None, + datetime: Optional[Union[str, python_datetime]] = None, limit: int = 10, token: str = None, **kwargs, @@ -439,6 +440,13 @@ def item_collection( "datetime": "2020-01-01T00:00:00.00001Z", }, ) + get_search_zero = client.get( + "/search", + params={ + "collections": ["test"], + "datetime": "2020-01-01T00:00:00.0000Z", + }, + ) post_search = client.post( "/search", json={ @@ -446,9 +454,20 @@ def item_collection( "datetime": "2020-01-01T00:00:00.00001Z", }, ) + post_search_zero = client.post( + "/search", + json={ + "collections": ["test"], + "datetime": "2020-01-01T00:00:00.0000Z", + }, + ) assert get_search.status_code == 200, get_search.text assert get_search.json() == "2020-01-01T00:00:00.000010+00:00" + assert get_search_zero.status_code == 200, get_search_zero.text + assert get_search_zero.json() == "2020-01-01T00:00:00+00:00" assert post_search.status_code == 200, post_search.text assert post_search.json() == "2020-01-01T00:00:00.00001Z" + assert post_search_zero.status_code == 200, post_search_zero.text + assert post_search_zero.json() == "2020-01-01T00:00:00.0000Z"