Skip to content

Commit 1cf260b

Browse files
committed
Formatting changes
1 parent de36225 commit 1cf260b

File tree

1 file changed

+53
-42
lines changed

1 file changed

+53
-42
lines changed

tests/extensions/test_classification.py

Lines changed: 53 additions & 42 deletions
Original file line numberDiff line numberDiff line change
@@ -7,16 +7,24 @@
77

88
import pystac
99
from pystac import ExtensionTypeError, Item
10-
from pystac.extensions.classification import Classification, Bitfield, ClassificationExtension
10+
from pystac.extensions.classification import (
11+
Classification,
12+
Bitfield,
13+
ClassificationExtension,
14+
)
1115
from pystac.utils import get_opt
1216
import pytest
1317
from tests.utils import TestCases
1418

1519
logging.basicConfig(level=logging.DEBUG)
1620
logger = logging.getLogger()
1721

18-
LANDSAT_EXAMPLE_URI = TestCases.get_path("data-files/classification/classification-landsat-example.json")
19-
CLASSIFICATION_COLLECTION_URI = TestCases.get_path("data-files/classification/collection-item-assets.json")
22+
LANDSAT_EXAMPLE_URI = TestCases.get_path(
23+
"data-files/classification/classification-landsat-example.json"
24+
)
25+
CLASSIFICATION_COLLECTION_URI = TestCases.get_path(
26+
"data-files/classification/collection-item-assets.json"
27+
)
2028
PLAIN_ITEM = TestCases.get_path("data-files/item/sample-item.json")
2129

2230

@@ -25,41 +33,50 @@ def item_dict() -> Dict[str, Any]:
2533
with open(LANDSAT_EXAMPLE_URI) as f:
2634
return json.load(f)
2735

36+
2837
@pytest.fixture
2938
def landsat_item() -> Item:
3039
return Item.from_file(LANDSAT_EXAMPLE_URI)
3140

41+
3242
@pytest.fixture
3343
def plain_item() -> Item:
3444
return Item.from_file(PLAIN_ITEM)
3545

46+
3647
def test_stac_extensions(landsat_item: Item) -> None:
3748
assert ClassificationExtension.has_extension(landsat_item)
3849

50+
3951
def test_get_schema_uri(landsat_item: Item) -> None:
4052
assert ClassificationExtension.get_schema_uri() in landsat_item.stac_extensions
4153

54+
4255
def test_ext_raises_if_item_does_not_conform(plain_item: Item) -> None:
4356
with pytest.raises(pystac.errors.ExtensionNotImplemented):
4457
ClassificationExtension.ext(plain_item)
4558

59+
4660
def test_apply(plain_item: Item) -> None:
4761
ClassificationExtension.add_to(plain_item)
48-
ClassificationExtension.ext(plain_item).apply(bitfields=[
49-
Bitfield.create(
50-
offset=0,
51-
length=1,
52-
classes=[
53-
Classification.create(name="no", value=0),
54-
Classification.create(name="yes", value=1)
55-
]
56-
)
57-
])
62+
ClassificationExtension.ext(plain_item).apply(
63+
bitfields=[
64+
Bitfield.create(
65+
offset=0,
66+
length=1,
67+
classes=[
68+
Classification.create(name="no", value=0),
69+
Classification.create(name="yes", value=1),
70+
],
71+
)
72+
]
73+
)
5874
# plain_item.validate() ## THIS FAILS
59-
assert len(ClassificationExtension.ext(plain_item).bitfields)==1
60-
assert ClassificationExtension.ext(plain_item).bitfields[0].offset==0
61-
assert ClassificationExtension.ext(plain_item).bitfields[0].length==1
62-
assert len(ClassificationExtension.ext(plain_item).bitfields[0].classes)==2
75+
assert len(ClassificationExtension.ext(plain_item).bitfields) == 1
76+
assert ClassificationExtension.ext(plain_item).bitfields[0].offset == 0
77+
assert ClassificationExtension.ext(plain_item).bitfields[0].length == 1
78+
assert len(ClassificationExtension.ext(plain_item).bitfields[0].classes) == 2
79+
6380

6481
def test_create() -> None:
6582
field = Bitfield.create(
@@ -69,43 +86,32 @@ def test_create() -> None:
6986
length=2,
7087
classes=[
7188
Classification.create(
72-
name="not_set",
73-
description="No confidence level set",
74-
value=0
89+
name="not_set", description="No confidence level set", value=0
7590
),
7691
Classification.create(
77-
name="low",
78-
description="Low confidence cloud",
79-
value=1
92+
name="low", description="Low confidence cloud", value=1
8093
),
8194
Classification.create(
82-
name="medium",
83-
description="Medium confidence cloud",
84-
value=2
95+
name="medium", description="Medium confidence cloud", value=2
8596
),
8697
Classification.create(
87-
name="high",
88-
description="High confidence cloud",
89-
value=3
90-
)
91-
]
98+
name="high", description="High confidence cloud", value=3
99+
),
100+
],
92101
)
93102

94-
assert field.__repr__() == "<Bitfield offset=8 length=2 classes=[<Classification name=not_set value=0>, <Classification name=low value=1>, <Classification name=medium value=2>, <Classification name=high value=3>]>"
103+
assert (
104+
field.__repr__()
105+
== "<Bitfield offset=8 length=2 classes=[<Classification name=not_set value=0>, <Classification name=low value=1>, <Classification name=medium value=2>, <Classification name=high value=3>]>"
106+
)
95107

96108
logger.info(field)
97109

110+
98111
def test_incomplete_fields():
99112
with pytest.raises(Exception):
100113
field = Bitfield.create(
101-
offset=2,
102-
length=1,
103-
classes=[
104-
Classification.create(
105-
name="dummy",
106-
value=1
107-
)
108-
]
114+
offset=2, length=1, classes=[Classification.create(name="dummy", value=1)]
109115
)
110116

111117

@@ -130,6 +136,7 @@ def _parse_times(a_dict: Dict[str, Any]) -> None:
130136
_parse_times(d2)
131137
assert d1 == d2, f"Mismatch between dictionaries: \n{d1}\n{d2}"
132138

139+
133140
def test_add_to(plain_item: Item) -> None:
134141
assert ClassificationExtension.get_schema_uri() not in plain_item.stac_extensions
135142

@@ -143,12 +150,16 @@ def test_add_to(plain_item: Item) -> None:
143150
ClassificationExtension.add_to(plain_item)
144151

145152
classification_uris = [
146-
uri for uri in plain_item.stac_extensions if uri == ClassificationExtension.get_schema_uri()
153+
uri
154+
for uri in plain_item.stac_extensions
155+
if uri == ClassificationExtension.get_schema_uri()
147156
]
148157
assert len(classification_uris) == 1
149158

159+
150160
def test_validate_classification(landsat_item: Item) -> None:
151161
landsat_item.validate()
152162

163+
153164
def test_set_field(landsat_item: Item) -> None:
154-
logger.warning(landsat_item.assets['qa_pixel']['raster:bands'])
165+
logger.warning(landsat_item.assets["qa_pixel"]["raster:bands"])

0 commit comments

Comments
 (0)