code: def test_file_metadata_providers_not_implemented():
      meta_provider = FileMetadataProvider()
      with pytest.raises(NotImplementedError):
          meta_provider(["/foo/bar.csv"], None)
      meta_provider = BaseFileMetadataProvider()
      with pytest.raises(NotImplementedError):
          meta_provider(
              ["/foo/bar.csv"],
              None,
              rows_per_file=None,
              file_sizes=[None],
          )
      with pytest.raises(NotImplementedError):
          meta_provider.expand_paths(["/foo/bar.csv"], None)
      meta_provider = ParquetMetadataProvider()
      with pytest.raises(NotImplementedError):
          meta_provider(
              ["/foo/bar.csv"],
              None,
              num_fragments=0,
              prefetched_metadata=None,
          )
      assert meta_provider.prefetch_file_metadata(["test"]) is None
  
imports: import logging
  import os
  import posixpath
  import urllib.parse
  from functools import partial
  from unittest.mock import patch
  import pandas
  import pyarrow
  import pyarrow.parquet
  import pytest
  from pyarrow.fs import LocalFileSystem
  from pytest_lazyfixture import lazy_fixture
  from ray.data.datasource import BaseFileMetadataProvider, DefaultFileMetadataProvider, DefaultParquetMetadataProvider, FastFileMetadataProvider, FileMetadataProvider, ParquetMetadataProvider
  from ray.data.datasource.file_based_datasource import FILE_SIZE_FETCH_PARALLELIZATION_THRESHOLD
  from ray.data.datasource.file_meta_provider import _get_file_infos_common_path_prefix, _get_file_infos_parallel, _get_file_infos_serial
  from ray.data.datasource.path_util import _resolve_paths_and_filesystem, _unwrap_protocol
  from ray.data.tests.conftest import *
  from ray.data.tests.test_partitioning import PathPartitionEncoder
  from ray.tests.conftest import *
label_desc: Use image node_id 4 for calling a global function with example usage: test_file_metadata_providers_not_implemented() without return types