code: def test_checkouts_on_same_stage_name_and_output_name(
      tmp_dir, dvc, run_copy
  ):
      tmp_dir.gen("foo", "foo")
      run_copy("foo", "bar", name="copy-foo-bar")
      run_copy("foo", "copy-foo-bar", name="make_collision")
  
      (tmp_dir / "bar").unlink()
      (tmp_dir / "copy-foo-bar").unlink()
      assert dvc.checkout("copy-foo-bar")["added"] == ["bar"]
      assert dvc.checkout("./copy-foo-bar")["added"] == ["copy-foo-bar"]
  
imports: import logging
  import os
  import shutil
  import stat
  import textwrap
  import pytest
  from dvc.cli import main
  from dvc.dvcfile import PROJECT_FILE, load_file
  from dvc.exceptions import CheckoutError, CheckoutErrorSuggestGit, NoOutputOrStageError
  from dvc.fs import system
  from dvc.stage.exceptions import StageFileDoesNotExistError
  from dvc.utils import relpath
  from dvc.utils.fs import remove
  from tests.utils import get_gitignore_content
label_desc: Use image node_id 32 for calling a global function with example usage: test_checkouts_on_same_stage_name_and_output_name(tmp_dir, dvc, run_copy) without return types