code: def test_sampling_between_surfaces(projection, affine_eye):
      projector = {
          "nearest": surface._nearest_voxel_sampling,
          "linear": surface._interpolation_sampling,
      }[projection]
      mesh = flat_mesh(13, 7, 3.0)
      inner_mesh = flat_mesh(13, 7, 1)
      img = z_const_img(5, 7, 13).T
      projection = projector(
          [img],
          mesh,
          affine_eye,
          kind="auto",
          n_points=100,
          inner_mesh=inner_mesh,
      )
      assert_array_almost_equal(
          projection.ravel(), img[:, :, 1:4].mean(axis=-1).ravel()
      )
  
imports: import os
  import tempfile
  import warnings
  import nibabel
  import numpy
  import pytest
  from nibabel import gifti
  from numpy.testing import assert_array_almost_equal, assert_array_equal
  from scipy.spatial import Delaunay
  from scipy.stats import pearsonr
  from nilearn import datasets, image
  from nilearn._utils import data_gen
  from nilearn.image import resampling
  from nilearn.surface import Mesh, Surface, load_surf_data, load_surf_mesh, surface
  from nilearn.surface.surface import _gifti_img_to_mesh, _load_surf_files_gifti_gzip
  from nilearn.surface.tests._testing import flat_mesh, generate_surf, z_const_img
label_desc: Use image node_id 30 for calling a global function with example usage: test_sampling_between_surfaces(projection, affine_eye) without return types