code: def test_migrate_file(td):
      src = pjoin(td, "src")
      dst = pjoin(td, "dst")
      touch(src, "test file")
      assert migrate_file(src, dst)
      assert_files_equal(src, dst)
  
      src2 = pjoin(td, "src2")
      touch(src2, "different src")
      assert not migrate_file(src2, dst)
      assert_files_equal(src, dst)
  
imports: from __future__ import annotations
  import os
  import re
  import shutil
  from tempfile import mkdtemp
  from unittest.mock import patch
  import pytest
  from jupyter_core import migrate
  from jupyter_core.application import JupyterApp
  from jupyter_core.migrate import migrate, migrate_config, migrate_dir, migrate_file, migrate_one, migrate_static_custom
  from jupyter_core.utils import ensure_dir_exists
label_desc: Use image node_id 5 for calling a global function with example usage: test_migrate_file(td) without return types