code: def test_send_recv_func(self):
      np.random.seed(0)
      num_nodes = 5
      dim = 4
      edges = [(0, 1), (1, 2), (3, 4), (4, 1), (1, 0)]
  
      nfeat = np.array(
          [
              [1, 2, 3, 4],
              [2, 3, 4, 5],
              [3, 4, 5, 6],
              [4, 5, 6, 7],
              [5, 6, 7, 8],
          ]
      )
  
      ground = np.array(
          [
              [2, 3, 4, 5],
              [6, 8, 10, 12],
              [2, 3, 4, 5],
              [0, 0, 0, 0],
              [4, 5, 6, 7],
          ]
      )
  
      g = pgl.Graph(
          edges=edges, num_nodes=num_nodes, node_feat={"nfeat": nfeat}
      )
  
      g.tensor()
  
      output = g.send_recv(g.node_feat["nfeat"], reduce_func="sum")
      output = output.numpy()
  
      self.assertTrue((ground == output).all())
  
imports: import os
  import unittest
  import numpy
  import paddle
  import pgl
  from testsuite import create_random_graph
label_desc: Use image node_id 12 for calling the GraphTest obj's underlying member method code with example usage: obj.test_send_recv_func() without return types