code: def test_annotator_metrics_unified(
      feedback_dataset_guidelines: str,
      feedback_dataset_fields: List["AllowedFieldTypes"],
      feedback_dataset_questions: List["AllowedQuestionTypes"],
      feedback_dataset_records_with_paired_suggestions: List[
          FeedbackRecord
      ],
      question: str,
      metric_names: Union[str, List[str]],
      strategy_name: str,
      responses_vs_suggestions: bool,
  ):
      if not strategy_name:
          return
      dataset = FeedbackDataset(
          guidelines=feedback_dataset_guidelines,
          fields=feedback_dataset_fields,
          questions=feedback_dataset_questions,
      )
      dataset.add_records(
          records=feedback_dataset_records_with_paired_suggestions
      )
  
      if question in ("question-1",):
          with pytest.raises(NotImplementedError):
              UnifiedAnnotatorMetric(dataset, question)
      else:
          metric = UnifiedAnnotatorMetric(
              dataset,
              question,
              strategy_name=strategy_name,
              responses_vs_suggestions=responses_vs_suggestions,
          )
          metrics_report = metric.compute(metric_names)
  
          if isinstance(metric_names, list):
              assert isinstance(metrics_report, list)
          else:
              assert isinstance(metrics_report, ModelMetricResult)
              assert str(
                  list(dataset.records[0].unified_responses.values())[
                      0
                  ][0].value
              ) in str(dataset.records[0].responses)
              metrics_report = [metrics_report]
              metric_names = [metric_names]
  
          assert all(
              [
                  result.metric_name == name
                  for result, name in zip(metrics_report, metric_names)
              ]
          )
  
file_path: argilla/tests/integration/client/feedback/metrics/test_annotator_metrics.py
imports: import uuid
  from typing import TYPE_CHECKING, List, Union
  import pytest
  from argilla import User, init
  from argilla.client.feedback.dataset import FeedbackDataset
  from argilla.client.feedback.metrics.annotator_metrics import AnnotatorMetric, UnifiedAnnotatorMetric
  from argilla.client.feedback.metrics.base import ModelMetricResult
  from argilla.client.feedback.schemas import FeedbackRecord
  from tests.factories import UserFactory, WorkspaceFactory
label_desc: Use image node_id 4 for calling a global function with example usage: test_annotator_metrics_unified(feedback_dataset_guidelines, feedback_dataset_fields, feedback_dataset_questions, feedback_dataset_records_with_paired_suggestions, question, metric_names, strategy_name, responses_vs_suggestions) without return types