code: def test_get_data_dir__from_path(tmp_path):
      with proj_env(), patch.dict(os.environ, {}, clear=True), patch(
          "pyproj.datadir.Path.absolute", return_value=_INVALID_PATH
      ), patch("pyproj.datadir.sys.prefix", str(_INVALID_PATH)), patch(
          "pyproj.datadir.shutil.which",
          return_value=str(tmp_path / "bin" / "proj"),
      ):
          proj_dir = tmp_path / "share" / "proj"
          proj_dir.mkdir(parents=True)
          create_projdb(proj_dir)
          assert get_data_dir() == str(proj_dir)
  
imports: import logging
  import os
  from contextlib import contextmanager
  from pathlib import Path
  from unittest.mock import patch
  import pytest
  import pyproj._datadir
  from pyproj import CRS, Transformer, get_codes, set_use_global_context
  from pyproj._datadir import _pyproj_global_context_initialize
  from pyproj.datadir import DataDirError, append_data_dir, get_data_dir, get_user_data_dir, set_data_dir
  from pyproj.enums import PJType
  from pyproj.exceptions import CRSError
  from test.conftest import proj_env
label_desc: Use image node_id 13 for calling a global function with example usage: test_get_data_dir__from_path(tmp_path) without return types