code: def _check_executor_metadata(executor_metadata, expected_metadata):
      assert (
          list(executor_metadata.inputs) == expected_metadata["inputs"]
      )
      assert (
          list(executor_metadata.input_tensor_types)
          == expected_metadata["input_tensor_types"]
      )
      assert (
          list(executor_metadata.outputs)
          == expected_metadata["outputs"]
      )
      assert (
          list(executor_metadata.output_tensor_types)
          == expected_metadata["output_tensor_types"]
      )
      assert list(executor_metadata.pools) == expected_metadata["pools"]
      assert executor_metadata.devices == expected_metadata["devices"]
      assert executor_metadata.executor == expected_metadata["executor"]
      assert executor_metadata.mod_name == expected_metadata["mod_name"]
      assert (
          executor_metadata.interface_api
          == expected_metadata["interface_api"]
      )
      assert (
          executor_metadata.unpacked_api
          == expected_metadata["unpacked_api"]
      )
      assert (
          executor_metadata.workspace_alignment
          == expected_metadata["workspace_alignment"]
      )
      assert (
          executor_metadata.constant_alignment
          == expected_metadata["constant_alignment"]
      )
      assert set(executor_metadata.pool_inputs.keys()) == set(
          expected_metadata["pool_inputs"].keys()
      )
      assert set(executor_metadata.io_pool_allocations.keys()) == set(
          expected_metadata["io_pool_allocations"].keys()
      )
  
file_path: tvm/tests/python/relay/aot/test_aot_create_executor_metadata.py
imports: import numpy
  import tvm
  import tvm.testing
  from tvm.script import tir
  from tvm.runtime.ndarray import array
  from tvm.relay.backend import Executor
  from tvm.relay.backend.aot import CreateExecutorMetadata
  from tvm.relay import TensorType
  from tvm.tir.usmp.utils import PoolAllocation
  from tvm.ir.memory_pools import AllocatedPoolInfo, ConstantPoolInfo, WorkspacePoolInfo, ConstantInfo
label_desc: Use image node_id 1 for calling a global function with example usage: _check_executor_metadata(executor_metadata, expected_metadata) without return types