code: def test_overlapping():
      """Test object measurement with two overlapping objects in ijv format"""
  
      i, j = numpy.mgrid[0:10, 0:20]
      m = (i > 1) & (i < 9) & (j > 1) & (j < 19)
      m1 = m & (i < j)
      m2 = m & (i < 9 - j)
      mlist = []
      olist = []
      for m in (m1, m2):
          objects = cellprofiler_core.object.Objects()
          objects.segmented = m.astype(int)
          olist.append(objects)
      ijv = numpy.column_stack(
          (
              numpy.hstack([numpy.argwhere(m)[:, 0] for m in (m1, m2)]),
              numpy.hstack([numpy.argwhere(m)[:, 1] for m in (m1, m2)]),
              numpy.array([1] * numpy.sum(m1) + [2] * numpy.sum(m2)),
          )
      )
      objects = cellprofiler_core.object.Objects()
      objects.ijv = ijv
      olist.append(objects)
      for objects in olist:
          module = (
              cellprofiler.modules.measureobjectsizeshape.MeasureObjectAreaShape()
          )
          module.objects_list.value.append("SomeObjects")
          module.calculate_zernikes.value = True
          object_set = cellprofiler_core.object.ObjectSet()
          object_set.add_objects(objects, "SomeObjects")
          module.set_module_num(1)
          image_set_list = cellprofiler_core.image.ImageSetList()
          measurements = cellprofiler_core.measurement.Measurements()
          mlist.append(measurements)
          pipeline = cellprofiler_core.pipeline.Pipeline()
          pipeline.add_module(module)
  
          def callback(caller, event):
              assert not isinstance(
                  event, cellprofiler_core.pipeline.event.RunException
              )
              pipeline.add_listener(callback)
  
          workspace = cellprofiler_core.workspace.Workspace(
              pipeline,
              module,
              image_set_list.get_image_set(0),
              object_set,
              measurements,
              image_set_list,
          )
          module.run(workspace)
  
      pipeline = cellprofiler_core.pipeline.Pipeline()
      for c in module.get_measurement_columns(pipeline):
          oname, feature = c[:2]
          if oname != "SomeObjects":
              continue
          measurements = mlist[0]
          assert isinstance(
              measurements, cellprofiler_core.measurement.Measurements
          )
          v1 = measurements.get_current_measurement(oname, feature)
          assert len(v1) == 1
          v1 = v1[0]
          measurements = mlist[1]
          v2 = measurements.get_current_measurement(oname, feature)
          assert len(v2) == 1
          v2 = v2[0]
          expected = (v1, v2)
          v = mlist[2].get_current_measurement(oname, feature)
          if numpy.all(numpy.isnan(v)):
              assert numpy.all(numpy.isnan(v))
          else:
              assert tuple(v) == expected
  
imports: import io
  import os
  import numpy
  import skimage.io
  import cellprofiler_core.image
  import cellprofiler_core.measurement
  import cellprofiler_core.modules.injectimage
  import cellprofiler.modules.measureobjectsizeshape
  import cellprofiler_core.object
  import cellprofiler_core.pipeline
  import cellprofiler_core.preferences
  import cellprofiler_core.workspace
  from cellprofiler_core.constants.measurement import COLTYPE_FLOAT
  import tests.frontend
  import tests.frontend.modules
label_desc: Use image node_id 11 for calling a global function with example usage: test_overlapping() without return types