code: def test_annotate_eval_results_metrics(self):
      eval_result = tfma.EvalResult(  # pytype: disable=wrong-arg-types
          slicing_metrics=_SLICING_METRICS,
          plots=None,
          attributions=None,
          config=None,
          data_location=None,
          file_format=None,
          model_location=None,
      )
      model_card = ModelCard()
      tf_utils.annotate_eval_result_metrics(model_card, eval_result)
  
      expected_metrics = [
          PerformanceMetric(
              type="average_loss",
              value="0.07875693589448929",
              slice="weekday_0",
          ),
          PerformanceMetric(
              type="prediction/mean",
              value="0.5100112557411194",
              slice="weekday_0",
          ),
          PerformanceMetric(
              type="average_loss",
              value="4.4887189865112305",
              slice="weekday_1",
          ),
          PerformanceMetric(
              type="prediction/mean",
              value="0.4839990735054016",
              slice="weekday_1",
          ),
          PerformanceMetric(
              type="average_loss",
              value="2.092138290405273",
              slice="weekday_2",
          ),
          PerformanceMetric(
              type="prediction/mean",
              value="0.3767518997192383",
              slice="weekday_2",
          ),
          PerformanceMetric(
              type="average_loss",
              value="2.092138290405273",
              slice="gender_male_X_age_10",
          ),
          PerformanceMetric(
              type="prediction/mean",
              value="0.3767518997192383",
              slice="gender_male_X_age_10",
          ),
          PerformanceMetric(
              type="average_loss",
              value="2.092138290405273",
              slice="gender_female_X_age_20",
          ),
          PerformanceMetric(
              type="prediction/mean",
              value="0.3767518997192383",
              slice="gender_female_X_age_20",
          ),
          PerformanceMetric(
              type="average_loss", value="1.092138290405273", slice=""
          ),
          PerformanceMetric(
              type="prediction/mean",
              value="0.4767518997192383",
              slice="",
          ),
          PerformanceMetric(
              type="int_array", value="1, 2, 3", slice=""
          ),
          PerformanceMetric(
              type="float_array", value="1.1, 2.2, 3.3", slice=""
          ),
      ]
      self.assertEqual(
          len(model_card.quantitative_analysis.performance_metrics),
          len(expected_metrics),
      )
      for actual_metric, expected_metric in zip(
          model_card.quantitative_analysis.performance_metrics,
          expected_metrics,
      ):
          self.assertEqual(actual_metric.type, expected_metric.type)
          self.assertEqual(actual_metric.slice, expected_metric.slice)
          self.assertEqual(actual_metric.value, expected_metric.value)
  
imports: import os
  import uuid
  import ml_metadata
  import tensorflow_model_analysis
  from absl.testing import absltest
  from ml_metadata.proto import metadata_store_pb2
  from model_card_toolkit.model_card import ModelCard, PerformanceMetric
  from model_card_toolkit.utils import tf_utils
  from model_card_toolkit.utils.testdata import tf_testdata_utils
label_desc: Use image node_id 22 for calling the TfUtilsTest obj's underlying member method code with example usage: obj.test_annotate_eval_results_metrics() without return types