class_docstr: Test class for custom metric tests.
docstr: Test config with a valid and an invalid custom metric.
docstr_tok: ["Test","config","with","a","valid","and","an","invalid","custom","metric","."]
code: def test_custom_metric_config_with_invalid_custom_metric(self):
      """Test config with a valid and an invalid custom metric."""
      # Run experiment
      train_file = other_dir / "examples_train.jsonlines"
      test_file = other_dir / "examples_test.jsonlines"
      config_path = fill_in_config_paths_for_single_file(
          config_dir / "test_custom_metrics_bad.template.cfg",
          train_file,
          test_file,
      )
      # since this configuration file consists of an invalid
      # metric, this should raise an error
      assert_raises_regex(
          ValueError,
          r"invalid metrics specified:.*missing_metric",
          run_configuration,
          config_path,
          local=True,
          quiet=True,
      )
  
imports: import json
  import sys
  import unittest
  from itertools import chain
  import numpy
  from numpy.testing import assert_array_almost_equal, assert_array_equal, assert_raises_regex
  from sklearn.metrics import fbeta_score
  import skll.metrics
  from skll.data import NDJReader
  from skll.experiments import run_configuration
  from skll.learner import Learner
  from skll.metrics import _CUSTOM_METRICS, register_custom_metric, use_score_func
  from skll.utils.testing import config_dir, fill_in_config_paths_for_single_file, make_classification_data, other_dir, output_dir, unlink
label_desc: Use image node_id 19 for calling the TestCustomMetrics obj's underlying member method code with example usage: obj.test_custom_metric_config_with_invalid_custom_metric() without return types