code: def test_get_version_str_empty_builder_dir(mock_fs: testing.MockFs):
      builder_dir = "path/to/ds/"
      error_msg = f"The builder directory {builder_dir} doesn't contain any versions."
  
      mock_fs.add_file(f"{builder_dir}features.json")
      get_version_str = functools.partial(
          read_only_builder._get_version_str,
          "path/to/ds/",  # pylint: disable=protected-access
      )
  
      with _assert_raises(error_msg):
          assert get_version_str() is None
  
imports: import contextlib
  import functools
  import os
  import pathlib
  import re
  from typing import Sequence
  from unittest import mock
  import dill
  from etils import epath
  import pytest
  import tensorflow
  from tensorflow_datasets import testing
  from tensorflow_datasets.core import constants
  from tensorflow_datasets.core import dataset_builder
  from tensorflow_datasets.core import dataset_utils
  from tensorflow_datasets.core import load
  from tensorflow_datasets.core import proto
  from tensorflow_datasets.core import read_only_builder
  from tensorflow_datasets.core import registered
  from tensorflow_datasets.core import splits
  from tensorflow_datasets.core import utils
  from tensorflow_datasets.core.features import features_dict
  from tensorflow_datasets.core.proto import dataset_info_pb2
  from tensorflow_datasets.core.utils import error_utils
  from tensorflow_datasets.core.utils import file_utils
  from google.protobuf import json_format
label_desc: Use image node_id 23 for calling a global function with example usage: test_get_version_str_empty_builder_dir(mock_fs) without return types