Skip to content

Commit 79e13c1

Browse files
authored
Merge pull request #76 from mwcraig/change-gets-to-properties
Change get methods to properties
2 parents 5bb8a8f + 5f31213 commit 79e13c1

File tree

3 files changed

+25
-27
lines changed

3 files changed

+25
-27
lines changed

src/astro_image_display_api/api_test.py

Lines changed: 8 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -78,7 +78,7 @@ def _assert_empty_catalog_table(self, table):
7878
assert sorted(table.colnames) == sorted(["x", "y", "coord"])
7979

8080
def _get_catalog_names_as_set(self):
81-
marks = self.image.get_catalog_names()
81+
marks = self.image.catalog_names
8282
return set(marks)
8383

8484
def test_width_height(self):
@@ -498,7 +498,7 @@ def test_load_multiple_catalogs(self, catalog):
498498
catalog_label="test2",
499499
)
500500

501-
assert sorted(self.image.get_catalog_names()) == ["test1", "test2"]
501+
assert sorted(self.image.catalog_names) == ["test1", "test2"]
502502

503503
# No guarantee markers will come back in the same order, so sort them.
504504
t1 = self.image.get_catalog(catalog_label="test1")
@@ -522,7 +522,7 @@ def test_load_multiple_catalogs(self, catalog):
522522
# other one without a label.
523523
self.image.remove_catalog(catalog_label="test1")
524524
# Make sure test1 is really gone.
525-
assert self.image.get_catalog_names() == ["test2"]
525+
assert self.image.catalog_names == ("test2",)
526526

527527
# Get without a catalog
528528
t2 = self.image.get_catalog()
@@ -798,15 +798,14 @@ def test_save_overwrite(self, tmp_path):
798798
# Using overwrite should save successfully
799799
self.image.save(filename, overwrite=True)
800800

801-
def test_get_image_labels(self, data):
801+
def test_image_labels(self, data):
802802
# the test viewer begins with a default empty image
803-
assert len(self.image.get_image_labels()) == 1
804-
assert self.image.get_image_labels()[0] is None
805-
assert isinstance(self.image.get_image_labels(), tuple)
803+
assert len(self.image.image_labels) == 0
804+
assert isinstance(self.image.image_labels, tuple)
806805

807806
self.image.load_image(data, image_label="test")
808-
assert len(self.image.get_image_labels()) == 2
809-
assert self.image.get_image_labels()[-1] == "test"
807+
assert len(self.image.image_labels) == 1
808+
assert self.image.image_labels[-1] == "test"
810809

811810
def test_get_image(self, data):
812811
self.image.load_image(data, image_label="test")

src/astro_image_display_api/image_viewer_logic.py

Lines changed: 9 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -371,11 +371,11 @@ def get_image(
371371
)
372372
return self._images[image_label].data
373373

374-
def get_image_labels(
375-
self,
376-
**kwargs, # noqa: ARG002
377-
) -> tuple[str, ...]:
378-
return tuple(self._images.keys())
374+
@property
375+
def image_labels(self) -> tuple[str, ...]:
376+
return tuple(k for k in self._images.keys() if k is not None)
377+
378+
image_labels.__doc__ = ImageViewerInterface.image_labels.__doc__
379379

380380
def _determine_largest_dimension(self, shape: tuple[int, int]) -> int:
381381
"""
@@ -647,13 +647,11 @@ def get_catalog(
647647

648648
get_catalog.__doc__ = ImageViewerInterface.get_catalog.__doc__
649649

650-
def get_catalog_names(
651-
self,
652-
**kwargs, # noqa: ARG002
653-
) -> list[str]:
654-
return list(self._user_catalog_labels())
650+
@property
651+
def catalog_names(self) -> tuple[str, ...]:
652+
return tuple(self._user_catalog_labels())
655653

656-
get_catalog_names.__doc__ = ImageViewerInterface.get_catalog_names.__doc__
654+
catalog_names.__doc__ = ImageViewerInterface.catalog_names.__doc__
657655

658656
# Methods that modify the view
659657
def set_viewport(

src/astro_image_display_api/interface_definition.py

Lines changed: 8 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -85,13 +85,13 @@ def get_image(
8585
"""
8686
raise NotImplementedError
8787

88+
@property
8889
@abstractmethod
89-
def get_image_labels(
90+
def image_labels(
9091
self,
91-
**kwargs,
92-
) -> tuple[str]:
92+
) -> tuple[str, ...]:
9393
"""
94-
Get the labels of the loaded images.
94+
Labels of the loaded images.
9595
9696
Returns
9797
-------
@@ -547,14 +547,15 @@ def get_catalog(
547547
"""
548548
raise NotImplementedError
549549

550+
@property
550551
@abstractmethod
551-
def get_catalog_names(self) -> list[str]:
552+
def catalog_names(self) -> tuple[str, ...]:
552553
"""
553-
Get the names of the loaded catalogs.
554+
Names of the loaded catalogs.
554555
555556
Returns
556557
-------
557-
list of str
558+
tuple of str
558559
The names of the loaded catalogs.
559560
560561
Notes

0 commit comments

Comments
 (0)