code: def test_vindex():
      x_np = np.arange(56).reshape((7, 8))
      x_cp = cupy.arange(56).reshape((7, 8))
  
      d_np = da.from_array(x_np, chunks=(3, 4))
      d_cp = da.from_array(x_cp, chunks=(3, 4))
  
      res_np = da.core._vindex(d_np, [0, 1, 6, 0], [0, 1, 0, 7])
      res_cp = da.core._vindex(d_cp, [0, 1, 6, 0], [0, 1, 0, 7])
  
      assert type(res_cp._meta) == cupy.ndarray
      assert_eq(
          res_cp, res_cp, check_type=False
      )  # Check that _meta and computed arrays match types
  
      assert_eq(res_np, res_cp, check_type=False)
  
imports: from __future__ import annotations
  import numpy
  import pytest
  from packaging.version import parse
  import dask
  import dask.array
  from dask.array.utils import assert_eq
  from dask.sizeof import sizeof
label_desc: Use image node_id 4 for calling a global function with example usage: test_vindex() without return types