code: def pytest_generate_tests(metafunc):
      """Hooks into pytest to add platform and board fixtures to tests that
      require them. To make sure that "platform" and "board" are treated as
      parameters for the appropriate tests (and included in the test names),
      we add them as function level parametrizations. This prevents data
      from being overwritten in Junit XML files if multiple platforms
      or boards are tested."""
  
      for argument in ["platform", "board"]:
          if argument in metafunc.fixturenames:
              value = metafunc.config.getoption(
                  f"--{argument}", default=None
              )
  
              if not value:
                  raise ValueError(
                      f"Test {metafunc.function.__name__} in module {metafunc.module.__name__} "
                      f"requires a --{argument} argument, but none was given."
                  )
  
              metafunc.parametrize(
                  argument, [metafunc.config.getoption(f"--{argument}")]
              )
  
file_path: tvm/python/tvm/micro/testing/pytest_plugin.py
imports: import pathlib
  import os
  import datetime
  import pytest
  from tvm.contrib.utils import tempdir
  from .utils import get_supported_platforms, get_supported_boards
label_desc: Use image node_id 2 for calling a global function with example usage: pytest_generate_tests(metafunc) without return types