code: def test_get_sample(self):
      data = Data(pos=torch.randn((2, 3, 3)))
      torch.testing.assert_allclose(
          MockBaseDataset.get_sample(
              data, "pos", 1, ConvolutionFormat.DENSE.value
          ),
          data.pos[1],
      )
  
      data = Data(
          pos=torch.randn((3, 3)), batch=torch.tensor([0, 1, 2])
      )
      torch.testing.assert_allclose(
          MockBaseDataset.get_sample(
              data, "pos", 1, ConvolutionFormat.PARTIAL_DENSE.value
          ),
          data.pos[1].unsqueeze(0),
      )
  
imports: import unittest
  from omegaconf import DictConfig, OmegaConf
  import os
  import sys
  from glob import glob
  import torch
  import numpy
  from torch_geometric.data.data import Data
  import torch_geometric.transforms
  from test.mockdatasets import MockDataset, MockDatasetConfig
  from test.mock_models import MockModel, MockModelConfig
  from torch_points3d.datasets.base_dataset import BaseDataset
  from torch_points3d.models.model_factory import instantiate_model
  from torch_points3d.utils.model_building_utils.model_definition_resolver import resolve_model
  from torch_points3d.utils.enums import ConvolutionFormat
  import torch_points3d.core.data_transform
label_desc: Use image node_id 2 for calling the TestBatchCollate obj's underlying member method code with example usage: obj.test_get_sample() without return types