code: def test_empty_model_summary_shapes(max_depth):
      """Test that the summary works for models that have no submodules."""
      model = EmptyModule()
      summary = summarize(model, max_depth=max_depth)
      assert summary.in_sizes == []
      assert summary.out_sizes == []
      assert summary.param_nums == []
  
imports: from collections import OrderedDict
  from typing import Any
  import pytest
  import torch
  import torch.nn
  from lightning.fabric.utilities.imports import _TORCH_GREATER_EQUAL_2_0
  from lightning.pytorch import LightningModule, Trainer
  from lightning.pytorch.demos.boring_classes import BoringModel
  from lightning.pytorch.utilities.model_summary.model_summary import LEFTOVER_PARAMS_NAME, NOT_APPLICABLE, UNKNOWN_SIZE, ModelSummary, summarize
  from tests_pytorch.helpers.advanced_models import ParityModuleRNN
  from tests_pytorch.helpers.runif import RunIf
label_desc: Use image node_id 2 for calling a global function with example usage: test_empty_model_summary_shapes(max_depth) without return types