code: def test_pull_no_rev_lock(erepo_dir, tmp_dir, dvc):
      with erepo_dir.chdir():
          erepo_dir.dvc_gen("foo", "contents", commit="create foo")
  
      stage = dvc.imp(os.fspath(erepo_dir), "foo", "foo_imported")
      assert "rev" not in stage.deps[0].def_repo
      stage.deps[0].def_repo.pop("rev_lock")
  
      load_file(dvc, stage.path).dump(stage)
  
      remove(stage.outs[0].cache_path)
      (tmp_dir / "foo_imported").unlink()
  
      dvc.pull([stage.path])
  
      assert (tmp_dir / "foo_imported").is_file()
      assert (tmp_dir / "foo_imported").read_text() == "contents"
  
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 22 for calling a global function with example usage: test_pull_no_rev_lock(erepo_dir, tmp_dir, dvc) without return types