code: def test_wait_for_response_running(self, time_mock, operation_mock):
      from google.cloud.container_v1.types import Operation
  
      running_op, done_op, pending_op = (
          mock.Mock(),
          mock.Mock(),
          mock.Mock(),
      )
      running_op.status = Operation.Status.RUNNING
      done_op.status = Operation.Status.DONE
      pending_op.status = Operation.Status.PENDING
  
      # Status goes from Running -> Pending -> Done
      operation_mock.side_effect = [pending_op, done_op]
      self.gke_hook.wait_for_operation(
          running_op, project_id=TEST_GCP_PROJECT_ID
      )
  
      assert time_mock.call_count == 3
      operation_mock.assert_any_call(
          running_op.name, project_id=TEST_GCP_PROJECT_ID
      )
      operation_mock.assert_any_call(
          pending_op.name, project_id=TEST_GCP_PROJECT_ID
      )
      assert operation_mock.call_count == 2
  
imports: from __future__ import annotations
  from asyncio import Future
  from unittest import mock
  import kubernetes.client
  import pytest
  from google.cloud.container_v1 import ClusterManagerAsyncClient
  from google.cloud.container_v1.types import Cluster
  from airflow.exceptions import AirflowException
  from airflow.providers.google.cloud.hooks.kubernetes_engine import GKEAsyncHook, GKEHook, GKEPodAsyncHook, GKEPodHook
  from airflow.providers.google.common.consts import CLIENT_INFO
  from tests.providers.google.cloud.utils.base_gcp_mock import mock_base_gcp_hook_default_project_id
label_desc: Use image node_id 8 for calling the TestGKEHook obj's underlying member method code with example usage: obj.test_wait_for_response_running(time_mock, operation_mock) without return types