code: def test_atomic_conv_with_feat():
      """A simple test for running an atomic convolution on featurized data."""
      dir_path = os.path.dirname(os.path.realpath(__file__))
      ligand_file = os.path.join(
          dir_path, "../../feat/tests/data/3zso_ligand_hyd.pdb"
      )
      protein_file = os.path.join(
          dir_path, "../../feat/tests/data/3zso_protein_noH.pdb"
      )
      # Pulled from PDB files. For larger datasets with more PDBs, would use
      # max num atoms instead of exact.
      frag1_num_atoms = 44  # for ligand atoms
      frag2_num_atoms = 2334  # for protein atoms
      complex_num_atoms = 2378  # in total
      max_num_neighbors = 4
      # Cutoff in angstroms
      neighbor_cutoff = 4
      complex_featurizer = AtomicConvFeaturizer(
          frag1_num_atoms,
          frag2_num_atoms,
          complex_num_atoms,
          max_num_neighbors,
          neighbor_cutoff,
      )
      # arbitrary label
      labels = np.array([0])
      features = complex_featurizer.featurize(
          [(ligand_file, protein_file)]
      )
      dataset = NumpyDataset(features, labels)
  
      batch_size = 1
      print("Constructing Atomic Conv model")
      atomic_convnet = atomic_conv.AtomicConvModel(
          n_tasks=1,
          batch_size=batch_size,
          layer_sizes=[10],
          frag1_num_atoms=frag1_num_atoms,
          frag2_num_atoms=frag2_num_atoms,
          complex_num_atoms=complex_num_atoms,
      )
  
      print("About to call fit")
      # Run a fitting operation
      atomic_convnet.fit(dataset)
      preds = atomic_convnet.predict(dataset)
      assert preds.shape == (1, 1, 1)
      assert np.count_nonzero(preds) > 0
  
file_path: deepchem/deepchem/models/tests/test_atomic_conv.py
imports: import os
  import pytest
  from flaky import flaky
  import numpy
  from deepchem.data import NumpyDataset
  from deepchem.feat import AtomicConvFeaturizer
label_desc: Use image node_id 4 for calling a global function with example usage: test_atomic_conv_with_feat() without return types