code: def test_example_input_array_types(
      example_input, expected_size, max_depth
  ):
      """Test the types of example inputs supported for display in the summary."""
  
      class DummyModule(nn.Module):
          def forward(self, *args, **kwargs):
              return None
  
      class DummyLightningModule(LightningModule):
          def __init__(self):
              super().__init__()
              self.layer = DummyModule()
  
          # this LightningModule and submodule accept any type of input
          def forward(self, *args, **kwargs):
              return self.layer(*args, **kwargs)
  
      if (
          isinstance(example_input, dict)
          and not _TORCH_GREATER_EQUAL_2_0
      ):
          # kwargs are not supported when torch < 2.0
          expected_size = UNKNOWN_SIZE
  
      model = DummyLightningModule()
      model.example_input_array = example_input
      summary = summarize(model, max_depth=max_depth)
      assert summary.in_sizes == [expected_size]
  
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 10 for calling a global function with example usage: test_example_input_array_types(example_input, expected_size, max_depth) and returns: None, self