class_docstr: Utility to test BatchingNodeProvider.
code: def __init__(self):
      self.node_provider = MockBatchingNodeProvider(
          provider_config={
              DISABLE_LAUNCH_CONFIG_CHECK_KEY: True,
              DISABLE_NODE_UPDATERS_KEY: True,
              FOREGROUND_NODE_LAUNCH_KEY: True,
          },
          cluster_name="test-cluster",
          _allow_multiple=True,
      )
      # Maps node types to expected node counts.
      self.expected_node_counts = defaultdict(int)
      self.expected_node_counts["head"] = 1
      # Tracks how many times we expect a scale request to have been submitted.
      self.expected_scale_request_submitted_count = 0
  
imports: from copy import copy
  from uuid import uuid4
  import os
  import random
  import sys
  from typing import Any, Dict
  from collections import defaultdict
  import pytest
  from ray.autoscaler.batching_node_provider import BatchingNodeProvider, NodeData, ScaleRequest
  from ray.autoscaler._private.util import NodeID, NodeType
  from ray.autoscaler.tags import STATUS_UP_TO_DATE, TAG_RAY_USER_NODE_TYPE, TAG_RAY_NODE_KIND, TAG_RAY_NODE_STATUS, NODE_KIND_HEAD, NODE_KIND_WORKER
  from ray.autoscaler._private.constants import DISABLE_LAUNCH_CONFIG_CHECK_KEY, DISABLE_NODE_UPDATERS_KEY, FOREGROUND_NODE_LAUNCH_KEY
label_desc: Use image node_id 1 to create a new BatchingNodeProviderTester object  with example: obj = BatchingNodeProviderTester()