code: def test_single_hemi(hemi, renderer_interactive_pyvistaqt, brain_gc):
      """Test single hemi support."""
      stc = read_source_estimate(fname_stc)
      idx, order = (0, 1) if hemi == "lh" else (1, -1)
      stc = SourceEstimate(
          getattr(stc, f"{hemi}_data"),
          [stc.vertices[idx], []][::order],
          0,
          1,
          "sample",
      )
      brain = stc.plot(
          subjects_dir=subjects_dir, hemi="both", size=300, cortex="0.5"
      )  # single cortex string arg
      brain.close()
  
      # test skipping when len(vertices) == 0
      stc.vertices[1 - idx] = np.array([])
      brain = stc.plot(subjects_dir=subjects_dir, hemi=hemi, size=300)
      brain.close()
  
imports: import os
  import platform
  from pathlib import Path
  from shutil import copyfile
  import numpy
  import pytest
  from matplotlib import image
  from matplotlib.lines import Line2D
  from numpy.testing import assert_allclose, assert_array_equal
  from mne import Dipole, MixedSourceEstimate, SourceEstimate, VolSourceEstimate, create_info, pick_types_forward, read_cov, read_evokeds, read_forward_solution, read_source_estimate, vertex_to_mni, write_surface
  from mne.channels import make_dig_montage
  from mne.datasets import testing
  from mne.io import read_info
  from mne.label import read_label
  from mne.minimum_norm import apply_inverse, make_inverse_operator
  from mne.source_estimate import _BaseSourceEstimate
  from mne.source_space import read_source_spaces, setup_volume_source_space
  from mne.utils import check_version
  from mne.viz import ui_events
  from mne.viz._brain import Brain, _BrainScraper, _LayeredMesh, _LinkViewer
  from mne.viz._brain.colormap import calculate_lut
  from mne.viz.utils import _get_cmap
label_desc: Use image node_id 9 for calling a global function with example usage: test_single_hemi(hemi, renderer_interactive_pyvistaqt, brain_gc) without return types