diff --git a/test/collection/test_filter.py b/test/collection/test_filter.py index a2853cbdc..f2adff72b 100644 --- a/test/collection/test_filter.py +++ b/test/collection/test_filter.py @@ -21,6 +21,17 @@ def test_empty_input_contains_any() -> None: wvc.query.Filter.by_id().contains_any([]) with pytest.raises(weaviate.exceptions.WeaviateInvalidInputError): wvc.query.Filter.by_property("test").contains_any([]) + with pytest.raises(weaviate.exceptions.WeaviateInvalidInputError): + wvc.query.Filter.by_creation_time().contains_any([]) + with pytest.raises(weaviate.exceptions.WeaviateInvalidInputError): + wvc.query.Filter.by_update_time().contains_any([]) + + +def test_empty_input_contains_none_time() -> None: + with pytest.raises(weaviate.exceptions.WeaviateInvalidInputError): + wvc.query.Filter.by_creation_time().contains_none([]) + with pytest.raises(weaviate.exceptions.WeaviateInvalidInputError): + wvc.query.Filter.by_update_time().contains_none([]) def test_empty_input_contains_all() -> None: diff --git a/weaviate/collections/classes/filters.py b/weaviate/collections/classes/filters.py index a05d9eab2..215329d72 100644 --- a/weaviate/collections/classes/filters.py +++ b/weaviate/collections/classes/filters.py @@ -320,6 +320,8 @@ def contains_any(self, dates: List[datetime]) -> _Filters: Args: dates: List of dates to filter on. """ + if len(dates) == 0: + raise WeaviateInvalidInputError("Filter contains_any must have at least one value") return _FilterValue( target=self._target_path(), value=dates, @@ -332,6 +334,8 @@ def contains_none(self, dates: List[datetime]) -> _Filters: Args: dates: List of dates to filter on. """ + if len(dates) == 0: + raise WeaviateInvalidInputError("Filter contains_none must have at least one value") return _FilterValue( target=self._target_path(), value=dates,