code: def test_different_sizes():
      numpy.random.seed(10)
      images = [
          numpy.random.uniform(size=(20, 10)).astype(numpy.float32),
          numpy.random.uniform(size=(10, 20)).astype(numpy.float32),
          numpy.random.uniform(size=(40, 5)).astype(numpy.float32),
          numpy.random.uniform(size=(40, 20)).astype(numpy.float32),
      ]
      workspace, module = make_tile_workspace(images)
      assert isinstance(module, cellprofiler.modules.tile.Tile)
      assert isinstance(
          workspace, cellprofiler_core.workspace.Workspace
      )
      module.wants_automatic_columns.value = False
      module.wants_automatic_rows.value = False
      module.rows.value = 1
      module.columns.value = 4
      module.tile_style.value = cellprofiler.modules.tile.S_ROW
      module.prepare_group(workspace, (), numpy.arange(1, 4))
  
      for i in range(4):
          workspace.set_image_set_for_testing_only(i)
          module.run(workspace)
      module.post_group(workspace, None)
      pixel_data = workspace.image_set.get_image(
          OUTPUT_IMAGE_NAME
      ).pixel_data
      assert pixel_data.shape[0] == 20
      assert pixel_data.shape[1] == 40
      assert numpy.all(pixel_data[:, :10] == images[0])
      assert numpy.all(pixel_data[:10, 10:20] == images[1][:, :10])
      assert numpy.all(pixel_data[10:, 10:20] == 0)
      assert numpy.all(pixel_data[:, 20:25] == images[2][:20, :])
      assert numpy.all(pixel_data[:, 25:30] == 0)
      assert numpy.all(pixel_data[:, 30:] == images[3][:20, :10])
  
imports: import numpy
  import six.moves
  import cellprofiler_core.image
  import cellprofiler_core.measurement
  import cellprofiler.modules.tile
  import cellprofiler_core.object
  import cellprofiler_core.pipeline
  import cellprofiler_core.workspace
  import tests.frontend.modules
label_desc: Use image node_id 13 for calling a global function with example usage: test_different_sizes() without return types