code: def test_cluster_and_service_required(gcloud_run):
      res = runner.invoke(cli.app, ["connect"])
      assert res.exit_code == 2
      assert gcloud_run.call_count == 0
  
      res = runner.invoke(cli.app, ["connect", "notebook"])
      assert res.exit_code == 2
      assert gcloud_run.call_count == 0
  
file_path: hail/hail/python/test/hailtop/hailctl/dataproc/test_connect.py
imports: from unittest.mock import Mock
  from typer.testing import CliRunner
  import pytest
  from hailtop.hailctl.dataproc import cli
label_desc: Use image node_id 3 for calling a global function with example usage: test_cluster_and_service_required(gcloud_run) without return types