code: def test_deploy_execute(self, mock_hook):
      mock_hook.return_value.get_function.side_effect = mock.Mock(
          side_effect=HttpError(
              resp=MOCK_RESP_404, content=b"not found"
          )
      )
      mock_hook.return_value.create_new_function.return_value = True
      op = CloudFunctionDeployFunctionOperator(
          project_id=GCP_PROJECT_ID,
          location=GCP_LOCATION,
          body=deepcopy(VALID_BODY),
          task_id="id",
      )
      op.execute(context=mock.MagicMock())
      mock_hook.assert_called_once_with(
          api_version="v1",
          gcp_conn_id="google_cloud_default",
          impersonation_chain=None,
      )
      mock_hook.return_value.get_function.assert_called_once_with(
          "projects/test_project_id/locations/test_region/functions/helloWorld"
      )
      expected_body = deepcopy(VALID_BODY)
      expected_body["labels"] = {
          "airflow-version": "v"
          + version.replace(".", "-").replace("+", "-")
      }
      mock_hook.return_value.create_new_function.assert_called_once_with(
          project_id="test_project_id",
          location="test_region",
          body=expected_body,
      )
  
imports: from __future__ import annotations
  from copy import deepcopy
  from unittest import mock
  import httplib2
  import pytest
  from googleapiclient.errors import HttpError
  from airflow.exceptions import AirflowException
  from airflow.providers.google.cloud.operators.functions import FUNCTION_NAME_PATTERN, CloudFunctionDeleteFunctionOperator, CloudFunctionDeployFunctionOperator, CloudFunctionInvokeFunctionOperator
  from airflow.version import version
label_desc: Use image node_id 2 for calling the TestGcfFunctionDeploy obj's underlying member method code with example usage: obj.test_deploy_execute(mock_hook) without return types