code: def test_find_reverse_edges_circual_reverse_types():
      edges = {
          "A:r1:B": (torch.tensor([1]), torch.tensor([1])),
          "B:r2:C": (torch.tensor([2]), torch.tensor([2])),
          "C:r3:A": (torch.tensor([3]), torch.tensor([3])),
      }
      edges = gb.add_reverse_edges(
          edges,
          {"A:r1:B": "B:r2:C", "B:r2:C": "C:r3:A", "C:r3:A": "A:r1:B"},
      )
      expected_edges = {
          "A:r1:B": (torch.tensor([1, 3]), torch.tensor([1, 3])),
          "B:r2:C": (torch.tensor([2, 1]), torch.tensor([2, 1])),
          "C:r3:A": (torch.tensor([3, 2]), torch.tensor([3, 2])),
      }
      assert torch.equal(
          edges["A:r1:B"][0], expected_edges["A:r1:B"][0]
      )
      assert torch.equal(
          edges["A:r1:B"][1], expected_edges["A:r1:B"][1]
      )
      assert torch.equal(
          edges["B:r2:C"][0], expected_edges["B:r2:C"][0]
      )
      assert torch.equal(
          edges["B:r2:C"][1], expected_edges["B:r2:C"][1]
      )
      assert torch.equal(
          edges["A:r1:B"][0], expected_edges["A:r1:B"][0]
      )
      assert torch.equal(
          edges["A:r1:B"][1], expected_edges["A:r1:B"][1]
      )
      assert torch.equal(
          edges["C:r3:A"][0], expected_edges["C:r3:A"][0]
      )
      assert torch.equal(
          edges["C:r3:A"][1], expected_edges["C:r3:A"][1]
      )
  
file_path: dgl/tests/python/pytorch/graphbolt/test_graphbolt_utils.py
imports: import backend
  import dgl.graphbolt
  import pytest
  import torch
label_desc: Use image node_id 4 for calling a global function with example usage: test_find_reverse_edges_circual_reverse_types() without return types