code: def test_plot_surf_roi(engine):
      if not is_plotly_installed() and engine == "plotly":
          pytest.skip(
              "Plotly is not installed; required for this test."
          )
      mesh, roi_map, parcellation = _generate_data_test_surf_roi()
      # plot roi
      plot_surf_roi(mesh, roi_map=roi_map, engine=engine)
      plot_surf_roi(mesh, roi_map=roi_map, colorbar=True, engine=engine)
      # plot parcellation
      plot_surf_roi(mesh, roi_map=parcellation, engine=engine)
      plot_surf_roi(
          mesh, roi_map=parcellation, colorbar=True, engine=engine
      )
      plot_surf_roi(
          mesh,
          roi_map=parcellation,
          colorbar=True,
          cbar_tick_fomat="%f",
          engine=engine,
      )
      plt.close()
  
imports: import re
  import tempfile
  import unittest.mock
  import matplotlib.pyplot
  import numpy
  import pytest
  from matplotlib.figure import Figure
  from numpy.testing import assert_array_equal
  from nilearn._utils.helpers import is_kaleido_installed, is_plotly_installed
  from nilearn.conftest import _rng
  from nilearn.datasets import fetch_surf_fsaverage
  from nilearn.plotting.displays import PlotlySurfaceFigure
  from nilearn.plotting.surf_plotting import VALID_HEMISPHERES, VALID_VIEWS, _compute_facecolors_matplotlib, _get_ticks_matplotlib, _get_view_plot_surf_matplotlib, _get_view_plot_surf_plotly, plot_img_on_surf, plot_surf, plot_surf_contours, plot_surf_roi, plot_surf_stat_map
  from nilearn.surface import load_surf_data, load_surf_mesh
  from nilearn.surface.tests._testing import generate_surf
label_desc: Use image node_id 26 for calling a global function with example usage: test_plot_surf_roi(engine) without return types