code: def test_to_edge_index():
      adj = torch.tensor(
          [
              [0.0, 1.0, 0.0, 0.0],
              [1.0, 0.0, 1.0, 0.0],
              [0.0, 1.0, 0.0, 1.0],
              [0.0, 0.0, 1.0, 0.0],
          ]
      ).to_sparse()
  
      edge_index, edge_attr = to_edge_index(adj)
      assert edge_index.tolist() == [
          [0, 1, 1, 2, 2, 3],
          [1, 0, 2, 1, 3, 2],
      ]
      assert edge_attr.tolist() == [1.0, 1.0, 1.0, 1.0, 1.0, 1.0]
  
      if is_full_test():
          jit = torch.jit.script(to_edge_index)
          edge_index, edge_attr = jit(adj)
          assert edge_index.tolist() == [
              [0, 1, 1, 2, 2, 3],
              [1, 0, 2, 1, 3, 2],
          ]
          assert edge_attr.tolist() == [1.0, 1.0, 1.0, 1.0, 1.0, 1.0]
  
file_path: pytorch_geometric/test/utils/test_sparse.py
imports: import os.path
  import pytest
  import torch
  import torch_geometric.typing
  from torch_geometric.profile import benchmark
  from torch_geometric.testing import is_full_test, withCUDA, withPackage
  from torch_geometric.typing import SparseTensor
  from torch_geometric.utils import dense_to_sparse, is_sparse, is_torch_sparse_tensor, to_edge_index, to_torch_coo_tensor, to_torch_csc_tensor, to_torch_csr_tensor, to_torch_sparse_tensor
  from torch_geometric.utils.sparse import cat
label_desc: Use image node_id 9 for calling a global function with example usage: test_to_edge_index() without return types