class_docstr: Test waiters from ``amazon/aws/waiters/ecs.json``.
class_docstr_tok: ["Test","waiters","from","``","amazon\/aws\/waiters\/ecs.json","``","."]
docstr: Test cluster reach failure state during deletion.
code: def test_cluster_inactive_failure_reasons(
      self, mock_describe_clusters
  ):
      """Test cluster reach failure state during deletion."""
      mock_describe_clusters.side_effect = [
          self.describe_clusters(EcsClusterStates.ACTIVE),
          self.describe_clusters(EcsClusterStates.DEPROVISIONING),
          self.describe_clusters(
              EcsClusterStates.DEPROVISIONING,
              failures={"reason": "MISSING"},
          ),
      ]
      waiter = EcsHook(aws_conn_id=None).get_waiter("cluster_inactive")
      waiter.wait(
          clusters=["spam-egg"],
          WaiterConfig={"Delay": 0.01, "MaxAttempts": 3},
      )
  
imports: from __future__ import annotations
  import json
  from typing import Sequence
  from unittest import mock
  import boto3
  import pytest
  from botocore.exceptions import WaiterError
  from botocore.waiter import WaiterModel
  from moto import mock_eks
  from airflow.providers.amazon.aws.hooks.base_aws import AwsBaseHook
  from airflow.providers.amazon.aws.hooks.batch_client import BatchClientHook
  from airflow.providers.amazon.aws.hooks.dynamodb import DynamoDBHook
  from airflow.providers.amazon.aws.hooks.ecs import EcsClusterStates, EcsHook, EcsTaskDefinitionStates
  from airflow.providers.amazon.aws.hooks.eks import EksHook
  from airflow.providers.amazon.aws.hooks.emr import EmrHook
  from airflow.providers.amazon.aws.waiters.base_waiter import BaseBotoWaiter
label_desc: Use image node_id 10 for calling the TestCustomECSServiceWaiters obj's underlying member method code with example usage: obj.test_cluster_inactive_failure_reasons(mock_describe_clusters) without return types