code: def test_classification_metrics_integrated():
      ground_truth = {
          "1": ["2", "3", "4"],
          "2": ["1", "3"],
          "3": ["1", "2"],
          "4": ["1"],
      }
      retrieved = {"1": ["2", "3"], "2": ["1"], "3": ["1"], "4": []}
      expected_return = {
          "precision": np.array([0.5, 1.0]),
          "recall": np.array([1.0, 0.5]),
          "f1_score": np.array([0.66666667, 0.66666667]),
          "support": np.array([2, 4]),
      }
      metrics = classification_metrics(ground_truth, retrieved)
      assert isinstance(metrics, dict)
  
      for k, v in metrics.items():
          assert isinstance(v, np.ndarray)
          np.testing.assert_almost_equal(metrics[k], expected_return[k])
  
file_path: imagededup/tests/test_classification.py
imports: import numpy
  from imagededup.handlers.metrics.classification import _get_unique_ordered_tuples, _make_all_unique_possible_pairs, _make_positive_duplicate_pairs, _prepare_labels, classification_metrics
label_desc: Use image node_id 6 for calling a global function with example usage: test_classification_metrics_integrated() without return types