code: def test_video_classification_app_test_30_views(
      self, root_dir: str
  ) -> None:
      train_app = self.get_train_app(
          root_dir=root_dir, fast_dev_run=False
      )
      train_app.test()
      video_clips_cnts = getattr(
          train_app.module, "video_clips_cnts", None
      )
      num_ensemble_views = getattr(
          train_app.datamodule, "num_ensemble_views", 10
      )
      num_spatial_crops = getattr(
          train_app.datamodule, "num_spatial_crops", 3
      )
      self.assertIsNotNone(video_clips_cnts)
      for _, sample_cnts in video_clips_cnts.items():
          self.assertEqual(
              num_ensemble_views * num_spatial_crops, sample_cnts
          )
  
file_path: pytorchvideo/pytorchvideo_trainer/tests/test_task_video_classification.py
imports: from torchrecipes.core.base_train_app import BaseTrainApp
  from util import BaseTrainAppTestCase, create_small_kinetics_dataset, run_locally, tempdir
label_desc: Use image node_id 5 for calling the TestVideoClassificationTrainApp obj's underlying member method code with example usage: obj.test_video_classification_app_test_30_views(root_dir) without return types