code: def test_pull_allow_missing(tmp_dir, dvc, local_remote):
      dvc.stage.add(name="bar", outs=["bar"], cmd="echo bar > bar")
  
      with pytest.raises(CheckoutError):
          dvc.pull()
  
      tmp_dir.dvc_gen("foo", "foo")
      dvc.push()
      clean(["foo"], dvc)
  
      stats = dvc.pull(allow_missing=True)
      assert stats["fetched"] == 1
  
imports: import logging
  import os
  import shutil
  import pytest
  from flaky.flaky_decorator import flaky
  import dvc_data
  from dvc.cli import main
  from dvc.exceptions import CheckoutError
  from dvc.repo.open_repo import clean_repos
  from dvc.stage.exceptions import StageNotFound
  from dvc.testing.remote_tests import TestRemote
  from dvc.utils.fs import remove
  from dvc_data.hashfile.db import HashFileDB
  from dvc_data.hashfile.db.local import LocalHashFileDB
  from dvc_data.hashfile.hash_info import HashInfo
label_desc: Use image node_id 23 for calling a global function with example usage: test_pull_allow_missing(tmp_dir, dvc, local_remote) without return types