code: def test_get_measurement_columns():
      workspace, module = make_workspace(
          dict(image=numpy.zeros((20, 10), bool)),
          dict(image=numpy.zeros((20, 10), bool)),
      )
  
      assert isinstance(
          module,
          cellprofiler.modules.measureimageoverlap.MeasureImageOverlap,
      )
      name = TEST_IMAGE_NAME
  
      columns = module.get_measurement_columns(workspace.pipeline)
      # All columns should be unique
      assert len(columns) == len(set([x[1] for x in columns]))
      # All columns should be floats and done on images
      x = columns[-1]
      assert all([x[0] == "Image"])
      assert all([x[2] == COLTYPE_FLOAT])
      for feature in cellprofiler.modules.measureimageoverlap.FTR_ALL:
          field = "_".join(
              (
                  cellprofiler.modules.measureimageoverlap.C_IMAGE_OVERLAP,
                  feature,
                  name,
              )
          )
          assert field in [x[1] for x in columns]
  
imports: import io
  import numpy
  import numpy.random
  import numpy.testing
  import scipy.ndimage
  import cellprofiler_library.opts.measureimageoverlap
  import cellprofiler_core.image
  import cellprofiler_core.measurement
  import cellprofiler_core.module
  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 cellprofiler.modules.measureimageoverlap
  import tests.frontend.modules
label_desc: Use image node_id 17 for calling a global function with example usage: test_get_measurement_columns() without return types