code: def _test_DefaultDataParser():
      # common csv
      num_nodes = 5
      num_labels = 3
      num_dims = 2
      node_id = np.arange(num_nodes)
      label = np.random.randint(num_labels, size=num_nodes)
      feat = np.random.rand(num_nodes, num_dims)
      df = pd.DataFrame(
          {
              "node_id": node_id,
              "label": label,
              "feat": [line.tolist() for line in feat],
          }
      )
  
      dt = _get_data_table(df)
      assert np.array_equal(node_id, dt["node_id"])
      assert np.array_equal(label, dt["label"])
      assert np.array_equal(feat, dt["feat"])
  
      # string consists of non-numeric values
      df = pd.DataFrame({"label": ["a", "b", "c"]})
      expect_except = False
      try:
          _get_data_table(df)
      except:
          expect_except = True
      assert expect_except
  
      # csv has index column which is ignored as it's unnamed
      df = pd.DataFrame({"label": [1, 2, 3]})
      dt = _get_data_table(df, True)
      assert len(dt) == 1
  
imports: import gzip
  import io
  import os
  import tarfile
  import tempfile
  import unittest
  import warnings
  import backend
  import dgl
  import dgl.data
  import numpy
  import pandas
  import pytest
  import yaml
  from dgl import DGLError
label_desc: Use image node_id 21 for calling a global function with example usage: _test_DefaultDataParser() without return types