code: def test_frame_join(self):
      fps = 10.0
      targets = [0, 0, 4, 4, 4, 4, 24, 8, 8]
      target_labels = np.array(
          [
              (0.0, 0.2, "A:maj"),
              (0.2, 0.6, "C#:maj"),
              (0.6, 0.7, "N"),
              (0.7, 0.9, "F:maj"),
          ],
          dtype=SEGMENT_DTYPE,
      )
      labels = majmin_targets_to_chord_labels(targets, fps)
      _compare_labels(self, labels, target_labels)
  
imports: from __future__ import absolute_import, division, print_function
  import unittest
  from os.path import join
  from madmom.features import Activations
  from madmom.features.chords import *
  from madmom.io import load_chords
  from .None import ACTIVATIONS_PATH, AUDIO_PATH, DETECTIONS_PATH
label_desc: Use image node_id 2 for calling the TestMajMinTargetsToChordLabelsFunction obj's underlying member method code with example usage: obj.test_frame_join() without return types