code: def test_maxima_suppression_zero():
      # Regression test for issue #877
      # if maxima_suppression_size = 1 or 0, use a 4-connected structuring
      # element.
      #
      img = numpy.array(
          [
              [0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
              [0, 0.1, 0, 0, 0.1, 0, 0, 0.1, 0, 0],
              [0, 0.1, 0, 0, 0, 0.2, 0, 0, 0, 0],
              [0, 0, 0, 0, 0, 0, 0, 0.1, 0, 0],
              [0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
          ]
      )
      expected = numpy.array(
          [
              [0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
              [0, 1, 0, 0, 2, 0, 0, 3, 0, 0],
              [0, 1, 0, 0, 0, 2, 0, 0, 0, 0],
              [0, 0, 0, 0, 0, 0, 0, 4, 0, 0],
              [0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
          ]
      )
      for distance in (0, 1):
          x = (
              cellprofiler.modules.identifyprimaryobjects.IdentifyPrimaryObjects()
          )
          x.use_advanced.value = True
          x.x_name.value = "my_image"
          x.y_name.value = "my_object"
          x.exclude_size.value = False
          x.size_range.value = (2, 10)
          x.fill_holes.value = False
          x.smoothing_filter_size.value = 0
          x.automatic_smoothing.value = 0
          x.maxima_suppression_size.value = distance
          x.automatic_suppression.value = False
          x.threshold.manual_threshold.value = 0.05
          x.unclump_method.value = (
              cellprofiler.modules.identifyprimaryobjects.UN_INTENSITY
          )
          x.watershed_method.value = (
              cellprofiler.modules.identifyprimaryobjects.WA_INTENSITY
          )
          x.threshold.threshold_scope.value = (
              cellprofiler.modules.threshold.TS_GLOBAL
          )
          x.threshold.global_operation.value = (
              cellprofiler.modules.threshold.TM_MANUAL
          )
          x.threshold.threshold_smoothing_scale.value = 0
          pipeline = cellprofiler_core.pipeline.Pipeline()
          x.set_module_num(1)
          pipeline.add_module(x)
          object_set = cellprofiler_core.object.ObjectSet()
          measurements = cellprofiler_core.measurement.Measurements()
          measurements.add(
              x.x_name.value, cellprofiler_core.image.Image(img)
          )
          x.run(
              cellprofiler_core.workspace.Workspace(
                  pipeline,
                  x,
                  measurements,
                  object_set,
                  measurements,
                  None,
              )
          )
          output = object_set.get_objects(x.y_name.value)
          assert output.count == 4
          assert numpy.all(output.segmented[expected == 0] == 0)
          assert len(numpy.unique(output.segmented[expected == 1])) == 1
  
imports: import io
  import os
  import centrosome.threshold
  import numpy
  import pytest
  import scipy.ndimage
  import cellprofiler_core.image
  import cellprofiler_core.measurement
  from cellprofiler_core.constants.measurement import FF_COUNT, COLTYPE_INTEGER, FF_FINAL_THRESHOLD, COLTYPE_FLOAT, FF_ORIG_THRESHOLD, M_NUMBER_OBJECT_NUMBER, M_LOCATION_CENTER_X, M_LOCATION_CENTER_Y, M_LOCATION_CENTER_Z, FF_SUM_OF_ENTROPIES, FF_WEIGHTED_VARIANCE
  from cellprofiler_core.constants.module._identify import TS_GLOBAL, TS_ADAPTIVE, O_TWO_CLASS, O_FOREGROUND, O_THREE_CLASS, O_BACKGROUND, RB_MODE, RB_SD, RB_MEAN, RB_MEDIAN, RB_MAD, TS_MANUAL, TS_MEASUREMENT
  from cellprofiler_core.image import VanillaImage
  import cellprofiler.modules.identifyprimaryobjects
  import cellprofiler.modules.threshold
  import cellprofiler_core.object
  import cellprofiler_core.pipeline
  import cellprofiler_core.setting
  import cellprofiler_core.workspace
  import tests.frontend
  import tests.frontend.modules
label_desc: Use image node_id 23 for calling a global function with example usage: test_maxima_suppression_zero() without return types