code: def test_num_shards(self):
      si = tfds.core.SplitInfo(
          name="train",
          shard_lengths=[1, 2, 3],
          num_bytes=0,
          filename_template=_filename_template(split="train"),
      )
      sd = splits.SplitDict([si])
      self.assertEqual(sd["train"].num_shards, 3)
  
imports: from tensorflow_datasets import testing
  from tensorflow_datasets.core import naming
  from tensorflow_datasets.core import proto
  from tensorflow_datasets.core import splits
  from tensorflow_datasets.core.utils import shard_utils
  import tensorflow_datasets.public_api
label_desc: Use image node_id 6 for calling the SplitDictTest obj's underlying member method code with example usage: obj.test_num_shards() without return types