diff --git a/openeo_processes_dask/process_implementations/cubes/general.py b/openeo_processes_dask/process_implementations/cubes/general.py index 0722bb36..d55cd86a 100644 --- a/openeo_processes_dask/process_implementations/cubes/general.py +++ b/openeo_processes_dask/process_implementations/cubes/general.py @@ -49,7 +49,7 @@ def trim_cube(data) -> RasterCube: other_dims = [d for d in data.dims if d != dim] available_data = values[(np.isnan(data)).all(dim=other_dims) == 0] if len(available_data) == 0: - raise ValueError(f"No data was found for spatiotemporal extent! ") + raise ValueError(f"Data contains NaN values only. ") data = data.sel({dim: available_data}) return data diff --git a/tests/test_dimensions.py b/tests/test_dimensions.py index 5767ebc7..dee7ff8f 100644 --- a/tests/test_dimensions.py +++ b/tests/test_dimensions.py @@ -139,4 +139,8 @@ def test_trim_cube(temporal_interval, bounding_box, random_raster_data): ) input_cube[:, :, :, 2] = np.zeros((30, 30, 20)) * np.nan output_cube = trim_cube(input_cube) - assert (output_cube.shape == (30, 30, 20, 3)).all() + assert (output_cube.shape == (30, 30, 20, 3)) + + all_nan = input_cube * np.nan + with pytest.raises(ValueError): + output_cube = trim_cube(all_nan)