code: def assert_classification(result, classes, metrics=None):
      if not metrics:
          default_scorers = get_default_scorers(
              TaskType.MULTICLASS, class_avg=False
          )
          metrics = [next(iter(default_scorers))]
      class_matchers = {
          clas: has_entries(
              {"Origin": close_to(1, 1), "Simple": close_to(1, 1)}
          )
          for clas in classes
      }
      matchers = {
          metric: has_entries(class_matchers) for metric in metrics
      }
      assert_that(result["scores"], has_entries(matchers))
      assert_that(
          result["scorers_perfect"],
          has_entries({metric: is_(1) for metric in metrics}),
      )
  
imports: from hamcrest import assert_that, calling, close_to, equal_to, greater_than, has_entries, has_entry, has_items, has_length, is_, raises
  from sklearn.metrics import f1_score, get_scorer, make_scorer, recall_score
  from deepchecks.core.errors import DeepchecksValueError
  from deepchecks.tabular.checks.model_evaluation import SimpleModelComparison
  from deepchecks.tabular.metric_utils.scorers import get_default_scorers
  from deepchecks.tabular.utils.task_type import TaskType
  from tests.base.utils import equal_condition_result
label_desc: Use image node_id 27 for calling a global function with example usage: assert_classification(result, classes, metrics) without return types