code: def test_find_builder_dir_with_multiple_data_dir(
      mock_fs: testing.MockFs,
  ):
      mock_fs.add_file("path/to/ds0/1.0.0/features.json")
  
      # Dataset not found.
      assert read_only_builder._find_builder_dir("ds0") is None
  
      with mock.patch.object(
          file_utils,
          "list_data_dirs",
          return_value=[constants.DATA_DIR, "path/to"],
      ):
          assert (
              read_only_builder._find_builder_dir("ds0")
              == "path/to/ds0/1.0.0"
          )
  
          # Dataset present in 2 different data_dir
          duplicate_path = os.path.join(
              constants.DATA_DIR, "ds0/1.0.0/features.json"
          )
          mock_fs.add_file(duplicate_path)
          with pytest.raises(
              ValueError, match="detected in multiple locations"
          ):
              read_only_builder._find_builder_dir("ds0")
  
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 14 for calling a global function with example usage: test_find_builder_dir_with_multiple_data_dir(mock_fs) without return types