code: def test_clone(self):
      (
          G,
          x,
          y,
          edge_x,
          edge_y,
          edge_index,
          graph_x,
          graph_y,
      ) = simple_networkx_graph()
  
      dg = Graph(
          node_feature=x,
          node_label=y,
          edge_index=edge_index,
          edge_feature=edge_x,
          edge_label=edge_y,
          graph_feature=graph_x,
          graph_label=graph_y,
          directed=True,
      )
      dg1 = dg.clone()
      self.assertEqual(dg.num_nodes, dg1.num_nodes)
      self.assertEqual(dg.num_edges, dg1.num_edges)
      self.assertEqual(dg.num_node_features, dg1.num_node_features)
      self.assertEqual(dg.num_edge_features, dg1.num_edge_features)
      self.assertEqual(dg.num_node_labels, dg1.num_node_labels)
      self.assertEqual(dg.num_edge_labels, dg1.num_edge_labels)
      self.assertTrue(not id(dg.edge_index) == id(dg1.edge_index))
      self.assertTrue(tuple(dg.keys) == tuple(dg1.keys))
  
file_path: deepsnap/tests/test_graph_tensor_backend.py
imports: import copy
  import torch
  import unittest
  import numpy
  from tests.utils import simple_networkx_graph
  from deepsnap.graph import Graph
  from torch_geometric.datasets import Planetoid
label_desc: Use image node_id 4 for calling the TestGraphTensorBackend obj's underlying member method code with example usage: obj.test_clone() without return types