code: def test_get_metric_invalid_metric_type(self):
      metrics_cache_obj = MetricsCacheYamlImpl(
          os.path.join(dir_path, "metrics.yaml")
      )
      metrics_cache_obj.add_metric_to_cache(
          metric_name="test_get_metric_invalid_metric_type",
          unit="ms",
          dimension_names=["ModelName", "Host"],
          metric_type=MetricTypes.GAUGE,
      )
      with pytest.raises(merrors.MetricsCacheKeyError) as exc_info:
          metrics_cache_obj.get_metric(
              "test_get_metric_invalid_metric_type", MetricTypes.COUNTER
          )
      assert (
          str(exc_info.value)
          == "\"Metric of type 'MetricTypes.COUNTER' and "
          "name 'test_get_metric_invalid_metric_type' doesn't exist\""
      )
  
imports: import os
  import uuid
  import pytest
  import ts.metrics.metric_cache_errors
  from ts.metrics.caching_metric import CachingMetric
  from ts.metrics.dimension import Dimension
  from ts.metrics.metric_cache_yaml_impl import MetricsCacheYamlImpl
  from ts.metrics.metric_type_enum import MetricTypes
label_desc: Use image node_id 2 for calling the TestGetMetrics obj's underlying member method code with example usage: obj.test_get_metric_invalid_metric_type() without return types