diff --git a/skimage/morphology/tests/test_misc.py b/skimage/morphology/tests/test_misc.py new file mode 100644 index 00000000..77bb20c3 --- /dev/null +++ b/skimage/morphology/tests/test_misc.py @@ -0,0 +1,30 @@ +import numpy as np +from numpy.testing import assert_array_equal, assert_equal +from skimage.morphology import remove_small_connected_components + +test_image = np.array([[0, 0, 0, 1, 0], + [1, 1, 1, 0, 0], + [1, 1, 1, 0, 1]], bool) +def test_one_connectivity(): + expected = np.array([[0, 0, 0, 0, 0], + [1, 1, 1, 0, 0], + [1, 1, 1, 0, 0]], bool) + observed = remove_small_connected_components(test_image, min_size=6) + assert_array_equal(observed, expected) + +def test_two_connectivity(): + expected = np.array([[0, 0, 0, 1, 0], + [1, 1, 1, 0, 0], + [1, 1, 1, 0, 0]], bool) + observed = remove_small_connected_components(test_image, min_size=7, + connectivity=2) + assert_array_equal(observed, expected) + +def test_in_place(): + observed = remove_small_connected_components(test_image, min_size=6, + in_place=True) + assert_equal(observed is test_image, True, + "remove_small_connected_components in_place argument failed.") + +if __name__ == "__main__": + np.testing.run_module_suite()