code: def helper(self, a1, p, a2, n, gt):
      try:
          self.assertTrue(torch.equal(a1, gt["correct_a"]))
          self.assertTrue(torch.equal(a2, gt["correct_a"]))
          self.assertTrue(
              any(torch.equal(p, cn) for cn in gt["correct_p"])
          )
          self.assertTrue(
              any(torch.equal(n, cn) for cn in gt["correct_n"])
          )
      except Exception:
          self.assertTrue(torch.equal(a1, gt["correct_a1"]))
          self.assertTrue(torch.equal(a2, gt["correct_a2"]))
          self.assertTrue(
              any(torch.equal(p, cn) for cn in gt["correct_p"])
          )
          self.assertTrue(
              any(torch.equal(n, cn) for cn in gt["correct_n"])
          )
  
file_path: pytorch-metric-learning/tests/miners/test_batch_easy_hard_miner.py
imports: import unittest
  import torch
  from pytorch_metric_learning.distances import LpDistance
  from pytorch_metric_learning.miners import BatchEasyHardMiner
  from pytorch_metric_learning.utils import loss_and_miner_utils
  from ..None import TEST_DEVICE, TEST_DTYPES, WITH_COLLECT_STATS
label_desc: Use image node_id 4 for calling the TestBatchEasyHardMiner obj's underlying member method code with example usage: obj.helper(a1, p, a2, n, gt) without return types