code: def test_drop_last(drop_last):
      N = {"N": 10}
      G = {
          ("N", "e", "N"): torch.stack(
              [
                  torch.tensor([0, 1, 2, 3, 4]),
                  torch.tensor([5, 6, 7, 8, 9]),
              ]
          )
      }
      F = FeatureStore(backend="torch")
      F.add_data(torch.arange(10), "N", "z")
  
      store = CuGraphStore(F, G, N)
      with tempfile.TemporaryDirectory() as dir:
          loader = CuGraphNeighborLoader(
              (store, store),
              input_nodes=torch.tensor([0, 1, 2, 3, 4]),
              num_neighbors=[1],
              batch_size=2,
              shuffle=False,
              drop_last=drop_last,
              batches_per_partition=1,
              directory=dir,
          )
  
          t = torch.tensor([])
          for batch in loader:
              t = torch.concat([t, batch["N"].z])
  
          t = t.tolist()
  
          files = os.listdir(dir)
          assert len(files) == 2 if drop_last else 3
          assert "batch=0-0.parquet" in files
          assert "batch=1-1.parquet" in files
          if not drop_last:
              assert "batch=2-2.parquet" in files
  
imports: import pytest
  import tempfile
  import os
  import cudf
  import cupy
  import numpy
  from cugraph_pyg.loader import CuGraphNeighborLoader
  from cugraph_pyg.loader import BulkSampleLoader
  from cugraph_pyg.data import CuGraphStore
  from cugraph_pyg.nn import SAGEConv
  from cugraph.gnn import FeatureStore
  from cugraph.utilities.utils import import_optional, MissingModule
  from typing import Dict, Tuple
label_desc: Use image node_id 8 for calling a global function with example usage: test_drop_last(drop_last) without return types