code: def test_cancel_workflow_invocation_is_not_called(
      self, mock_client, mock_state, caplog
  ):
      mock_state.return_value.state = WorkflowInvocation.State.SUCCEEDED
      expected_log = (
          "Workflow is not active. Either the execution has already "
      )
      "finished or has been canceled. Please check the logs above "
      "for more details."
  
      with caplog.at_level(logging.INFO):
          self.hook.cancel_workflow_invocation(
              project_id=PROJECT_ID,
              region=REGION,
              repository_id=REPOSITORY_ID,
              workflow_invocation_id=WORKFLOW_INVOCATION_ID,
          )
          assert expected_log in caplog.text
  
imports: from __future__ import annotations
  import logging
  from unittest import mock
  import pytest
  from google.api_core.gapic_v1.method import DEFAULT
  from google.cloud.dataform_v1beta1.types import WorkflowInvocation
  from airflow.exceptions import AirflowException
  from airflow.providers.google.cloud.hooks.dataform import DataformHook
  from tests.providers.google.cloud.utils.base_gcp_mock import mock_base_gcp_hook_default_project_id
label_desc: Use image node_id 10 for calling the TestDataformHook obj's underlying member method code with example usage: obj.test_cancel_workflow_invocation_is_not_called(mock_client, mock_state, caplog) without return types