code: def test_crossbow_submit(tmp_path):
      runner = CliRunner()
  
      def invoke(*args):
          return runner.invoke(
              crossbow, ["--queue-path", str(tmp_path), *args]
          )
  
      # initialize an empty crossbow repository
      git.run_cmd("init", str(tmp_path))
      git.run_cmd(
          "-C",
          str(tmp_path),
          "remote",
          "add",
          "origin",
          "https://github.com/dummy/repo",
      )
      git.run_cmd(
          "-C",
          str(tmp_path),
          "commit",
          "-m",
          "initial",
          "--allow-empty",
      )
  
      result = invoke("check-config")
      assert result.exit_code == 0
  
      result = invoke(
          "submit", "--no-fetch", "--no-push", "-g", "wheel"
      )
      assert result.exit_code == 0
  
imports: from click.testing import CliRunner
  import pytest
  from archery.crossbow.cli import crossbow
  from archery.utils.git import git
label_desc: Use image node_id 1 for calling a global function with example usage: test_crossbow_submit(tmp_path) and returns: runner