code: def test_train_test_split_dynamic_graph_static_signal():
      snapshot_count = 250
      n_count = 100
      feature_count = 32
  
      (
          edge_indices,
          edge_weights,
          features,
          additional_features,
      ) = generate_signal(250, 100, 32, ["optional1", "optional2"])
  
      targets = [
          np.random.uniform(0, 10, (n_count,))
          for _ in range(snapshot_count)
      ]
      dataset = StaticGraphTemporalSignal(
          edge_indices[0],
          edge_weights[0],
          features,
          targets,
          **additional_features,
      )
  
      train_dataset, test_dataset = temporal_signal_split(dataset, 0.8)
  
      for epoch in range(2):
          for snapshot in test_dataset:
              assert snapshot.edge_index.shape[0] == 2
              assert (
                  snapshot.edge_index.shape[1]
                  == snapshot.edge_attr.shape[0]
              )
              assert snapshot.x.shape == (100, 32)
              assert snapshot.y.shape == (100,)
              assert getattr(snapshot, "optional1").shape == (100, 32)
              assert getattr(snapshot, "optional2").shape == (100, 32)
  
      for epoch in range(2):
          for snapshot in train_dataset:
              assert snapshot.edge_index.shape[0] == 2
              assert (
                  snapshot.edge_index.shape[1]
                  == snapshot.edge_attr.shape[0]
              )
              assert snapshot.x.shape == (100, 32)
              assert snapshot.y.shape == (100,)
              assert getattr(snapshot, "optional1").shape == (100, 32)
              assert getattr(snapshot, "optional2").shape == (100, 32)
  
imports: import numpy
  import networkx
  from torch_geometric_temporal.signal import temporal_signal_split
  from torch_geometric_temporal.signal import StaticGraphTemporalSignal
  from torch_geometric_temporal.signal import DynamicGraphTemporalSignal
  from torch_geometric_temporal.signal import DynamicGraphStaticSignal
  from torch_geometric_temporal.signal import StaticHeteroGraphTemporalSignal
  from torch_geometric_temporal.signal import DynamicHeteroGraphTemporalSignal
  from torch_geometric_temporal.signal import DynamicHeteroGraphStaticSignal
  from torch_geometric_temporal.dataset import METRLADatasetLoader, PemsBayDatasetLoader
  from torch_geometric_temporal.dataset import ChickenpoxDatasetLoader, PedalMeDatasetLoader, WikiMathsDatasetLoader, EnglandCovidDatasetLoader
  from torch_geometric_temporal.dataset import TwitterTennisDatasetLoader, MontevideoBusDatasetLoader, MTMDatasetLoader
  from torch_geometric_temporal.dataset import WindmillOutputLargeDatasetLoader, WindmillOutputMediumDatasetLoader, WindmillOutputSmallDatasetLoader
label_desc: Use image node_id 42 for calling a global function with example usage: test_train_test_split_dynamic_graph_static_signal() without return types