code: def test_module_node_shuffle(idtype):
      transform = dgl.NodeShuffle()
      g = dgl.heterograph(
          {("A", "r", "B"): ([0, 1], [1, 2])},
          idtype=idtype,
          device=F.ctx(),
      )
      g.nodes["B"].data["h"] = F.randn((g.num_nodes("B"), 2))
      old_nfeat = g.nodes["B"].data["h"]
      new_g = transform(g)
      new_nfeat = g.nodes["B"].data["h"]
      assert F.allclose(old_nfeat, new_nfeat)
  
imports: import math
  import os
  import unittest
  import backend
  import dgl
  import dgl.function
  import dgl.partition
  import networkx
  import numpy
  import pytest
  from scipy import sparse
  from utils import parametrize_idtype
  from utils.graph_cases import get_cases
label_desc: Use image node_id 45 for calling a global function with example usage: test_module_node_shuffle(idtype) without return types