code: def test_shrink_inf_fill_holes():
      """Shrink infinitely after filling a hole"""
      labels = numpy.zeros((10, 10), int)
      labels[1:8, 1:8] = 1
      labels[4, 4] = 0
      expected = numpy.zeros((10, 10), int)
      expected[4, 4] = 1
      # Test failure without filling the hole
      workspace, module = make_workspace(
          labels,
          cellprofiler.modules.expandorshrinkobjects.O_SHRINK_INF,
      )
      module.run(workspace)
      objects = workspace.object_set.get_objects(OUTPUT_NAME)
      assert not numpy.all(objects.segmented == expected)
      # Test success after filling the hole
      workspace, module = make_workspace(
          labels,
          cellprofiler.modules.expandorshrinkobjects.O_SHRINK_INF,
          wants_fill_holes=True,
      )
      module.run(workspace)
      objects = workspace.object_set.get_objects(OUTPUT_NAME)
      assert numpy.all(objects.segmented == expected)
  
imports: import centrosome.cpmorphology
  import centrosome.outline
  import numpy
  import cellprofiler_core.image
  import cellprofiler_core.measurement
  import cellprofiler_core.module
  import cellprofiler.modules.expandorshrinkobjects
  import cellprofiler_core.object
  import cellprofiler_core.pipeline
  import cellprofiler_core.preferences
  import cellprofiler_core.workspace
  import cellprofiler_core.measurement
label_desc: Use image node_id 10 for calling a global function with example usage: test_shrink_inf_fill_holes() without return types