Skip to content

Commit 4f07a54

Browse files
committed
fixup! fixup! Basic handling of filter_bbox in CubeMetadata, down to SpatialDimension
1 parent 43bc219 commit 4f07a54

2 files changed

Lines changed: 11 additions & 2 deletions

File tree

‎openeo/metadata/_extents.py‎

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,12 @@ def __repr__(self) -> str:
2424
return "<_NonConcreteExtent>"
2525

2626
def __eq__(self, value: object, /) -> bool:
27-
return False
27+
if isinstance(value, _NonConcreteExtent):
28+
# Plot twist: non-concrete extents are not equal to each other,
29+
# even not to themselves (because they are non-concrete).
30+
return False
31+
# Still let third-party tooling hook in (e.g. dirty_equals.IsInstance)
32+
return NotImplemented
2833

2934

3035
class _EmptyExtent:

‎tests/metadata/test_extents.py‎

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
1+
import dirty_equals
12
import pytest
23

34
from openeo.metadata import NumericalInterval, _EmptyExtent, _NonConcreteExtent
@@ -8,10 +9,13 @@ def test_equality(self):
89
assert _NonConcreteExtent() != _NonConcreteExtent()
910

1011
def test_self_inequality(self):
11-
"""A non-concrete extent is even not equal to itself (because it is not concrete)"""
1212
extent = _NonConcreteExtent()
1313
assert extent != extent
1414

15+
def test_dirty_equals_isinstance(self):
16+
extent = _NonConcreteExtent()
17+
assert extent == dirty_equals.IsInstance(_NonConcreteExtent)
18+
1519

1620
class TestEmptyExtent:
1721
def test_equality(self):

0 commit comments

Comments
 (0)