code: def test_data_files_with_metadata_and_single_split(
      streaming, cache_dir, data_files_with_one_split_and_metadata
  ):
      data_files = data_files_with_one_split_and_metadata
      audiofolder = AudioFolder(
          data_files=data_files, cache_dir=cache_dir
      )
      audiofolder.download_and_prepare()
      datasets = (
          audiofolder.as_streaming_dataset()
          if streaming
          else audiofolder.as_dataset()
      )
      for split, data_files in data_files.items():
          expected_num_of_audios = (
              len(data_files) - 1
          )  # don't count the metadata file
          assert split in datasets
          dataset = list(datasets[split])
          assert len(dataset) == expected_num_of_audios
          # make sure each sample has its own audio and metadata
          assert (
              len({example["audio"]["path"] for example in dataset})
              == expected_num_of_audios
          )
          assert (
              len({example["text"] for example in dataset})
              == expected_num_of_audios
          )
          assert all(example["text"] is not None for example in dataset)
  
imports: import shutil
  import textwrap
  import librosa
  import numpy
  import pytest
  import soundfile
  from datasets import Audio, ClassLabel, Features, Value
  from datasets.data_files import DataFilesDict, get_data_patterns
  from datasets.download.streaming_download_manager import StreamingDownloadManager
  from datasets.packaged_modules.audiofolder.audiofolder import AudioFolder
  from ..utils import require_sndfile
label_desc: Use image node_id 15 for calling a global function with example usage: test_data_files_with_metadata_and_single_split(streaming, cache_dir, data_files_with_one_split_and_metadata) without return types