code: def test_dropout_edge():
      edge_index = torch.tensor(
          [[0, 1, 1, 2, 2, 3], [1, 0, 2, 1, 3, 2]]
      )
  
      out = dropout_edge(edge_index, training=False)
      assert edge_index.tolist() == out[0].tolist()
      assert out[1].tolist() == [True, True, True, True, True, True]
  
      torch.manual_seed(5)
      out = dropout_edge(edge_index)
      assert out[0].tolist() == [[0, 1, 2, 2], [1, 2, 1, 3]]
      assert out[1].tolist() == [True, False, True, True, True, False]
  
      torch.manual_seed(6)
      out = dropout_edge(edge_index, force_undirected=True)
      assert out[0].tolist() == [[0, 1, 1, 2], [1, 2, 0, 1]]
      assert out[1].tolist() == [0, 2, 0, 2]
  
imports: import pytest
  import torch
  from torch_geometric.testing import withPackage
  from torch_geometric.utils import dropout_adj, dropout_edge, dropout_node, dropout_path
label_desc: Use image node_id 3 for calling a global function with example usage: test_dropout_edge() without return types