code: def test_markPair(self):
      from collections import OrderedDict
  
      good_training_pairs = OrderedDict(
          (("match", DATA_SAMPLE[3:5]), ("distinct", DATA_SAMPLE[0:3]))
      )
      bad_training_pairs = {
          "non_dupes": DATA_SAMPLE[0:3],
          "match": DATA_SAMPLE[3:5],
      }
  
      matcher = dedupe.api.ActiveMatching(self.field_definition)
  
      self.assertRaises(
          ValueError, matcher.mark_pairs, bad_training_pairs
      )
  
      matcher.mark_pairs(good_training_pairs)
  
      with warnings.catch_warnings(record=True) as w:
          warnings.simplefilter("always")
          matcher.mark_pairs({"match": [], "distinct": []})
          assert len(w) == 1
          assert (
              str(w[-1].message)
              == "Didn't return any labeled record pairs"
          )
  
file_path: dedupe/tests/test_api.py
imports: import itertools
  import unittest
  import warnings
  from collections import OrderedDict
  import dedupe.api
label_desc: Use image node_id 4 for calling the ActiveMatch obj's underlying member method code with example usage: obj.test_markPair() without return types