code: def test_binary_classification_single_class(
      adult_split_dataset_and_model,
  ):
      # Arrange
      _, test, model = adult_split_dataset_and_model
      check_binary = SingleDatasetPerformance(scorers=["f1_per_class"])
      # Act
      new_test = test.copy(test.data[test.label_col == " <=50K"])
      result_binary = check_binary.run(new_test, model).value
      # Assert
      binary_f1 = result_binary[result_binary["Metric"] == "f1"].iloc[
          0, 2
      ]
      assert_that(binary_f1, close_to(0.98, 0.01))
  
imports: from typing import List
  from hamcrest import assert_that, calling, close_to, equal_to, has_entries, has_items, has_length, instance_of, none, raises
  from sklearn.ensemble import AdaBoostClassifier, RandomForestClassifier
  from sklearn.model_selection import train_test_split
  from deepchecks.core import ConditionResult
  from deepchecks.core.errors import DeepchecksNotSupportedError, DeepchecksValueError, ModelValidationError
  from deepchecks.tabular.checks import SingleDatasetPerformance
  from deepchecks.tabular.dataset import Dataset
  from deepchecks.tabular.metric_utils.scorers import DEFAULT_MULTICLASS_SCORERS, DEFAULT_REGRESSION_SCORERS
  from tests.base.utils import equal_condition_result
  from tests.common import is_nan
label_desc: Use image node_id 9 for calling a global function with example usage: test_binary_classification_single_class(adult_split_dataset_and_model) without return types