code: def test_run_databricks_cluster_spec(tmp_path):
      cluster_spec = {
          "spark_version": "5.0.x-scala2.11",
          "num_workers": 2,
          "node_type_id": "i3.xlarge",
      }
      cluster_spec_path = tmp_path.joinpath("cluster-spec.json")
      with open(cluster_spec_path, "w") as handle:
          json.dump(cluster_spec, handle)
  
      with mock.patch("mlflow.projects._run") as run_mock:
          for cluster_spec_arg in [
              json.dumps(cluster_spec),
              cluster_spec_path,
          ]:
              invoke_cli_runner(
                  cli.run,
                  [
                      TEST_PROJECT_DIR,
                      "-b",
                      "databricks",
                      "--backend-config",
                      cluster_spec_arg,
                      "-e",
                      "greeter",
                      "-P",
                      "name=hi",
                  ],
                  env={"MLFLOW_TRACKING_URI": "databricks://profile"},
              )
              assert run_mock.call_count == 1
              _, run_kwargs = run_mock.call_args_list[0]
              assert run_kwargs["backend_config"] == cluster_spec
              run_mock.reset_mock()
          res = CliRunner().invoke(
              cli.run,
              [
                  TEST_PROJECT_DIR,
                  "-m",
                  "databricks",
                  "--cluster-spec",
                  json.dumps(cluster_spec) + "JUNK",
                  "-e",
                  "greeter",
                  "-P",
                  "name=hi",
              ],
              env={"MLFLOW_TRACKING_URI": "databricks://profile"},
          )
          assert res.exit_code != 0
  
imports: import json
  import logging
  import os
  import shutil
  from unittest import mock
  import pytest
  from click.testing import CliRunner
  from mlflow import MlflowClient, cli
  from mlflow.utils import insecure_hash, process
  from tests.integration.utils import invoke_cli_runner
  from tests.projects.utils import GIT_PROJECT_URI, SSH_PROJECT_URI, TEST_DOCKER_PROJECT_DIR, TEST_PROJECT_DIR, docker_example_base_image
label_desc: Use image node_id 9 for calling a global function with example usage: test_run_databricks_cluster_spec(tmp_path) without return types