From 79794303f83afe20dd586adaad0229cfbfc0a7f9 Mon Sep 17 00:00:00 2001 From: Scott Lowe Date: Sun, 20 Jun 2021 10:47:19 +0100 Subject: [PATCH 1/5] RF:TST: Change to using a Mixin class for Rois2MasksTest --- fissa/tests/test_extraction.py | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/fissa/tests/test_extraction.py b/fissa/tests/test_extraction.py index f4ecee38..7773db13 100755 --- a/fissa/tests/test_extraction.py +++ b/fissa/tests/test_extraction.py @@ -420,7 +420,7 @@ def test_multiframe_mean_higherdim_pillow(base_fname, shp, dtype, datahandler): ) -class Rois2MasksBase(): +class Rois2MasksTestMixin: """Tests for rois2masks.""" polys = [ @@ -428,6 +428,9 @@ class Rois2MasksBase(): np.array([[72., 107.], [78., 130.], [100., 110.]]), ] + def __init__(self, *args, **kwargs): + super().__init__(*args, **kwargs) + def setup_class(self): self.expected = roitools.getmasks(self.polys, (176, 156)) self.data = np.zeros((1, 176, 156)) @@ -486,7 +489,7 @@ def test_polys_3d(self): self.datahandler.rois2masks(polys3d, self.data) -class TestRois2MasksTifffile(BaseTestCase, Rois2MasksBase): +class TestRois2MasksTifffile(Rois2MasksTestMixin, BaseTestCase): """Tests for rois2masks using `~extraction.DataHandlerTifffile`.""" def setup_class(self): @@ -495,7 +498,7 @@ def setup_class(self): self.datahandler = extraction.DataHandlerTifffile() -class TestRois2MasksTifffileLazy(BaseTestCase, Rois2MasksBase): +class TestRois2MasksTifffileLazy(Rois2MasksTestMixin, BaseTestCase): """Tests for rois2masks using `~extraction.TestRois2MasksTifffileLazy`.""" def setUp(self): @@ -513,7 +516,7 @@ def tearDown(self): shutil.rmtree(self.tempdir) -class TestRois2MasksPillow(BaseTestCase, Rois2MasksBase): +class TestRois2MasksPillow(Rois2MasksTestMixin, BaseTestCase): """Tests for rois2masks using `~extraction.DataHandlerPillow`.""" def setup_class(self): From 3b1d7704801991e145ddcf6a533c0796da402fb7 Mon Sep 17 00:00:00 2001 From: Scott Lowe Date: Sun, 20 Jun 2021 10:49:51 +0100 Subject: [PATCH 2/5] RF:TST: Use setUp instead of mixture of setup_class/setUp --- fissa/tests/test_extraction.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/fissa/tests/test_extraction.py b/fissa/tests/test_extraction.py index 7773db13..46eda2fc 100755 --- a/fissa/tests/test_extraction.py +++ b/fissa/tests/test_extraction.py @@ -431,7 +431,7 @@ class Rois2MasksTestMixin: def __init__(self, *args, **kwargs): super().__init__(*args, **kwargs) - def setup_class(self): + def setUp(self): self.expected = roitools.getmasks(self.polys, (176, 156)) self.data = np.zeros((1, 176, 156)) self.datahandler = None @@ -492,7 +492,7 @@ def test_polys_3d(self): class TestRois2MasksTifffile(Rois2MasksTestMixin, BaseTestCase): """Tests for rois2masks using `~extraction.DataHandlerTifffile`.""" - def setup_class(self): + def setUp(self): self.expected = roitools.getmasks(self.polys, (176, 156)) self.data = np.zeros((1, 176, 156)) self.datahandler = extraction.DataHandlerTifffile() @@ -519,7 +519,7 @@ def tearDown(self): class TestRois2MasksPillow(Rois2MasksTestMixin, BaseTestCase): """Tests for rois2masks using `~extraction.DataHandlerPillow`.""" - def setup_class(self): + def setUp(self): self.expected = roitools.getmasks(self.polys, (176, 156)) self.data = np.zeros((1, 176, 156)) self.data = Image.fromarray(self.data.reshape(self.data.shape[-2:]).astype(np.uint8)) From db4a25901d0139961074127d28be578491e1a0f8 Mon Sep 17 00:00:00 2001 From: Scott Lowe Date: Sun, 20 Jun 2021 10:50:11 +0100 Subject: [PATCH 3/5] TST:DOC: Fix docstring --- fissa/tests/test_extraction.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/fissa/tests/test_extraction.py b/fissa/tests/test_extraction.py index 46eda2fc..48316916 100755 --- a/fissa/tests/test_extraction.py +++ b/fissa/tests/test_extraction.py @@ -499,7 +499,7 @@ def setUp(self): class TestRois2MasksTifffileLazy(Rois2MasksTestMixin, BaseTestCase): - """Tests for rois2masks using `~extraction.TestRois2MasksTifffileLazy`.""" + """Tests for rois2masks using `~extraction.DataHandlerTifffileLazy`.""" def setUp(self): self.expected = roitools.getmasks(self.polys, (176, 156)) From de47252f944272bac7b36619171c194b9ede3e38 Mon Sep 17 00:00:00 2001 From: Scott Lowe Date: Sun, 20 Jun 2021 11:15:35 +0100 Subject: [PATCH 4/5] MNT: Can't call empty super() on python 2.7 --- fissa/tests/test_extraction.py | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) diff --git a/fissa/tests/test_extraction.py b/fissa/tests/test_extraction.py index 48316916..c6b20cac 100755 --- a/fissa/tests/test_extraction.py +++ b/fissa/tests/test_extraction.py @@ -428,9 +428,6 @@ class Rois2MasksTestMixin: np.array([[72., 107.], [78., 130.], [100., 110.]]), ] - def __init__(self, *args, **kwargs): - super().__init__(*args, **kwargs) - def setUp(self): self.expected = roitools.getmasks(self.polys, (176, 156)) self.data = np.zeros((1, 176, 156)) @@ -489,7 +486,7 @@ def test_polys_3d(self): self.datahandler.rois2masks(polys3d, self.data) -class TestRois2MasksTifffile(Rois2MasksTestMixin, BaseTestCase): +class TestRois2MasksTifffile(BaseTestCase, Rois2MasksTestMixin): """Tests for rois2masks using `~extraction.DataHandlerTifffile`.""" def setUp(self): @@ -498,7 +495,7 @@ def setUp(self): self.datahandler = extraction.DataHandlerTifffile() -class TestRois2MasksTifffileLazy(Rois2MasksTestMixin, BaseTestCase): +class TestRois2MasksTifffileLazy(BaseTestCase, Rois2MasksTestMixin): """Tests for rois2masks using `~extraction.DataHandlerTifffileLazy`.""" def setUp(self): @@ -516,7 +513,7 @@ def tearDown(self): shutil.rmtree(self.tempdir) -class TestRois2MasksPillow(Rois2MasksTestMixin, BaseTestCase): +class TestRois2MasksPillow(BaseTestCase, Rois2MasksTestMixin): """Tests for rois2masks using `~extraction.DataHandlerPillow`.""" def setUp(self): From 20867d9dec3d06a689dcae79d7637ac53f26799e Mon Sep 17 00:00:00 2001 From: Scott Lowe Date: Sun, 20 Jun 2021 11:17:50 +0100 Subject: [PATCH 5/5] MNT: Use parent Rois2MasksTestMixin.setUp --- fissa/tests/test_extraction.py | 11 ++++------- 1 file changed, 4 insertions(+), 7 deletions(-) diff --git a/fissa/tests/test_extraction.py b/fissa/tests/test_extraction.py index c6b20cac..9285bc57 100755 --- a/fissa/tests/test_extraction.py +++ b/fissa/tests/test_extraction.py @@ -431,7 +431,7 @@ class Rois2MasksTestMixin: def setUp(self): self.expected = roitools.getmasks(self.polys, (176, 156)) self.data = np.zeros((1, 176, 156)) - self.datahandler = None + # Child class must declare self.datahandler def test_imagej_zip(self): # load zip of rois @@ -490,8 +490,7 @@ class TestRois2MasksTifffile(BaseTestCase, Rois2MasksTestMixin): """Tests for rois2masks using `~extraction.DataHandlerTifffile`.""" def setUp(self): - self.expected = roitools.getmasks(self.polys, (176, 156)) - self.data = np.zeros((1, 176, 156)) + Rois2MasksTestMixin.setUp(self) self.datahandler = extraction.DataHandlerTifffile() @@ -499,8 +498,7 @@ class TestRois2MasksTifffileLazy(BaseTestCase, Rois2MasksTestMixin): """Tests for rois2masks using `~extraction.DataHandlerTifffileLazy`.""" def setUp(self): - self.expected = roitools.getmasks(self.polys, (176, 156)) - self.data = np.zeros((1, 176, 156)) + Rois2MasksTestMixin.setUp(self) os.makedirs(self.tempdir) self.filename = os.path.join(self.tempdir, "tmp.tif") tifffile.imsave(self.filename, self.data) @@ -517,7 +515,6 @@ class TestRois2MasksPillow(BaseTestCase, Rois2MasksTestMixin): """Tests for rois2masks using `~extraction.DataHandlerPillow`.""" def setUp(self): - self.expected = roitools.getmasks(self.polys, (176, 156)) - self.data = np.zeros((1, 176, 156)) + Rois2MasksTestMixin.setUp(self) self.data = Image.fromarray(self.data.reshape(self.data.shape[-2:]).astype(np.uint8)) self.datahandler = extraction.DataHandlerPillow()