code: def test_get_evaluation_metrics(
      targets: List[Text],
      predictions: List[Text],
      expected_precision: float,
      expected_fscore: float,
      expected_accuracy: float,
  ):
      from rasa.model_testing import get_evaluation_metrics
  
      report, precision, f1, accuracy = get_evaluation_metrics(
          targets, predictions, True, exclude_label=NO_ENTITY
      )
  
      assert f1 == expected_fscore
      assert precision == expected_precision
      assert accuracy == expected_accuracy
      assert NO_ENTITY not in report
  
imports: import asyncio
  import sys
  from pathlib import Path
  import textwrap
  from typing import List, Text
  import pytest
  from _pytest.capture import CaptureFixture
  from _pytest.monkeypatch import MonkeyPatch
  import rasa.shared.utils.io
  import rasa.utils.io
  from rasa.core.agent import Agent
  from rasa.shared.core.events import UserUttered
  from rasa.core.test import EvaluationStore, WronglyClassifiedUserUtterance, WronglyPredictedAction
  from rasa.shared.core.trackers import DialogueStateTracker
  from rasa.shared.core.training_data.story_writer.yaml_story_writer import YAMLStoryWriter
  import rasa.model
  import rasa.cli.utils
  from rasa.nlu.test import NO_ENTITY
  import rasa.core
  from rasa.shared.nlu.constants import ENTITY_ATTRIBUTE_VALUE, ENTITY_ATTRIBUTE_START, ENTITY_ATTRIBUTE_END, ENTITY_ATTRIBUTE_TYPE, ENTITY_ATTRIBUTE_TEXT
  from rasa.shared.constants import LATEST_TRAINING_DATA_FORMAT_VERSION
label_desc: Use image node_id 5 for calling a global function with example usage: test_get_evaluation_metrics(targets, predictions, expected_precision, expected_fscore, expected_accuracy) without return types