code: def test_get_vertex_data(dataset1_MGPropertyGraph):
      """
      Ensure PG.get_vertex_data() returns the correct data based on vertex IDs
      passed in.
      """
      (pG, data) = dataset1_MGPropertyGraph
  
      # Ensure the generated vertex IDs are unique
      all_vertex_data = pG.get_vertex_data()
      assert all_vertex_data[
          pG.vertex_col_name
      ].nunique().compute() == len(all_vertex_data)
  
      # Test with specific columns and types
      vert_type = "merchants"
      columns = ["merchant_location", "merchant_size"]
  
      some_vertex_data = pG.get_vertex_data(
          types=[vert_type], columns=columns
      )
      # Ensure the returned df is the right length and includes only the
      # vert/type + specified columns
      standard_vert_columns = [pG.vertex_col_name, pG.type_col_name]
      assert len(some_vertex_data) == len(data[vert_type][1])
      assert sorted(some_vertex_data.columns) == sorted(
          columns + standard_vert_columns
      )
      assert some_vertex_data.dtypes["_TYPE_"] == "category"
  
      # Test with all params specified
      vert_ids = [11, 4, 21]
      vert_type = "merchants"
      columns = ["merchant_location", "merchant_size"]
  
      some_vertex_data = pG.get_vertex_data(
          vertex_ids=vert_ids, types=[vert_type], columns=columns
      )
      # Ensure the returned df is the right length and includes at least the
      # specified columns.
      assert len(some_vertex_data) == len(vert_ids)
      assert set(columns) - set(some_vertex_data.columns) == set()
      assert some_vertex_data.dtypes["_TYPE_"] == "category"
  
      # Allow a single vertex type and single vertex id to be passed in
      df1 = pG.get_vertex_data(
          vertex_ids=[11], types=[vert_type]
      ).compute()
      df2 = pG.get_vertex_data(vertex_ids=11, types=vert_type).compute()
      assert len(df1) == 1
      assert df1.shape == df2.shape
      assert_frame_equal(df1, df2, check_like=True)
  
imports: import gc
  import pytest
  import pandas
  import numpy
  import cudf
  import cugraph
  import dask_cudf
  import cupy
  import cugraph.dask
  from cupy.testing import assert_array_equal
  from cudf.testing import assert_frame_equal, assert_series_equal
  from pylibcugraph.testing.utils import gen_fixture_params_product
  from cugraph.dask.common.mg_utils import is_single_gpu
  from cugraph.datasets import cyber, netscience
label_desc: Use image node_id 18 for calling a global function with example usage: test_get_vertex_data(dataset1_MGPropertyGraph) without return types