code: def test_cache_type_is_properly_overridden(
      tmp_dir, scm, dvc, erepo_dir
  ):
      with erepo_dir.chdir():
          with erepo_dir.dvc.config.edit() as conf:
              conf["cache"]["type"] = "symlink"
          erepo_dir.dvc.cache = CacheManager(erepo_dir.dvc)
          erepo_dir.scm_add(
              [erepo_dir.dvc.config.files["repo"]],
              "set source repo cache type to symlink",
          )
          erepo_dir.dvc_gen("foo", "foo content", "create foo")
      assert system.is_symlink(erepo_dir / "foo")
  
      dvc.imp(os.fspath(erepo_dir), "foo", "foo_imported")
  
      assert not system.is_symlink("foo_imported")
      assert (tmp_dir / "foo_imported").read_text() == "foo content"
      assert scm.is_ignored("foo_imported")
  
imports: import filecmp
  import os
  import pytest
  from funcy import first
  from dvc.cachemgr import CacheManager
  from dvc.config import NoRemoteError
  from dvc.dvcfile import load_file
  from dvc.fs import system
  from dvc.scm import Git
  from dvc.stage.exceptions import StagePathNotFoundError
  from dvc.testing.tmp_dir import make_subrepo
  from dvc.utils.fs import remove
  from dvc_data.index.index import DataIndexDirError
label_desc: Use image node_id 15 for calling a global function with example usage: test_cache_type_is_properly_overridden(tmp_dir, scm, dvc, erepo_dir) without return types