code: def test_compute_no_groups():
      groups, workspace = make_image_sets(
          (
              ("Plate", ("P-12345", "P-23456")),
              ("Well", ("A01", "A02", "A03")),
              ("Site", ("1", "2", "3", "4")),
          ),
          (
              (
                  "DNA",
                  "Wavelength",
                  "1",
                  cellprofiler_core.pipeline.ImageSetChannelDescriptor.CT_GRAYSCALE,
              ),
              (
                  "GFP",
                  "Wavelength",
                  "1",
                  cellprofiler_core.pipeline.ImageSetChannelDescriptor.CT_GRAYSCALE,
              ),
          ),
      )
      groups = cellprofiler_core.modules.groups.Groups()
      groups.wants_groups.value = False
      m = workspace.measurements
      assert isinstance(m, cellprofiler_core.measurement.Measurements)
      image_numbers = m.get_image_numbers()
      expected_file_names = m[
          cellprofiler_core.constants.measurement.IMAGE,
          cellprofiler_core.constants.measurement.C_FILE_NAME
          + "_"
          + "DNA",
          image_numbers,
      ]
      assert groups.prepare_run(workspace)
      assert len(image_numbers) == 2 * 3 * 4
      output_file_names = m[
          cellprofiler_core.constants.measurement.IMAGE,
          cellprofiler_core.constants.measurement.C_FILE_NAME
          + "_"
          + "DNA",
          image_numbers,
      ]
      assert list(expected_file_names) == list(output_file_names)
  
file_path: CellProfiler/tests/core/modules/test_groups.py
imports: import io
  import os
  import numpy
  import cellprofiler_core.constants.measurement
  import cellprofiler_core.measurement
  import cellprofiler_core.modules.groups
  import cellprofiler_core.pipeline
  import cellprofiler_core.workspace
  import tests.core
label_desc: Use image node_id 5 for calling a global function with example usage: test_compute_no_groups() without return types